Как вы обрабатываете ответ JSON от Google?googles recaptcha (версия 2) Ответ
Это, как я получаю JSON:
res.on('data', function (chunk) {
//process.stdout.write(chunk);//formats it like I need it
var lines =JSON.parse(chunk);
});
Что я получаю от Google (например), как Google JSON выглядит так:
{ success: false, 'error-codes': [ 'missing-input-response' ] }
То, что я думал, будет работать:
JSON.parse("{ success: false, 'error-codes': [ 'missing-input-response' ] }").success;
Конечно, это не сработает, потому что оно не является правильным.
Что на самом деле работает (но для этого мне нужно преобразовать JSON от Google):
JSON.parse("{ "success": false, "error-codes": [ "missing-input-response" ]}").success
Тогда я нашел this:
var req = http.request(options, function(res) {
res.setEncoding('utf8');
res.on('data', function(chunk) {//chunk is the JSON from google
var lines = chunk.split("\n");
if(lines.length >= 2) {
if(lines[0] == 'true')
that._recaptcha_response.is_valid = true;
that._recaptcha_response.error = lines[1];
}
that.emit('data', that._recaptcha_response);
});
});
Но это, кажется, не работает на моем месте , возможно, они изменили JSON от recaptcha версии 1 до версии 2?!.
ОБНОВЛЕНО
Более глубокий взгляд показал следующее:
обновлено мое сообщение – user254197