From 4f0b11cca58c637d75cd6cdaff74a1802830b898 Mon Sep 17 00:00:00 2001 From: Lloyd Hilaiel Date: Fri, 16 Sep 2011 13:40:02 -0600 Subject: [PATCH] handle malformed JSON response from verifier gracefully --- server/main.js | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/server/main.js b/server/main.js index 32be272..f2ee2db 100755 --- a/server/main.js +++ b/server/main.js @@ -79,15 +79,18 @@ app.post("/api/login", function (req, res) { var body = ""; vres.on('data', function(chunk) { body+=chunk; } ) .on('end', function() { - console.log(body); - - var verifierResp = JSON.parse(body); - var valid = verifierResp && verifierResp.status === "okay"; - var email = valid ? verifierResp.email : null; - - req.session.email = email; - - res.json(email); + try { + var verifierResp = JSON.parse(body); + var valid = verifierResp && verifierResp.status === "okay"; + var email = valid ? verifierResp.email : null; + + req.session.email = email; + + res.json(email); + } catch(e) { + // bogus response from verifier! return null + res.json(null); + } }); }); vreq.setHeader('Content-Type', 'application/x-www-form-urlencoded');