我正在尝试使用requestify验证recaptcha。以下是文档对api的描述:
API Request
URL: https://www.google.com/recaptcha/api/siteverify
METHOD: POST
POST Parameter Description
secret Required. The shared key between your site and ReCAPTCHA.
response Required. The user response token provided by the reCAPTCHA to the user and provided to your site on.
remoteip Optional. The user's IP address.这是我的请求
requestify.post('https://www.google.com/recaptcha/api/siteverify', {
secret: '**********',
response: req.body['g-recaptcha-response'],
})
.then(function(response){
console.log(response.body);
})我得到的回应是
{
"success": false,
"error-codes": [
"missing-input-response",
"missing-input-secret"
]
}我想我可能以错误的方式发布了参数,或者我误解了api文档。
发布于 2016-05-30 17:48:50
我使用了"request“,但它的工作方式应该是一样的。
var request = require('request');
var data = {
remoteip: req.connection.remoteAddress, // @IP of the user
response: req.body["g-recaptcha-response"],
secret: RECAPTCHA_PRIVATE_KEY
};
request.post({
'url': RECAPTCHA_URL,
form: data,
'proxy': HTTP_PROXY // (optional) I'm behind a proxy
}, function (error, response, body) {
if (!error && response.statusCode == 200) {
var b = JSON.parse(body);
if ( b.success === true ) {
// ... your code here
} else // ...
} else // ....
});https://stackoverflow.com/questions/37521916
复制相似问题