最近一个客户告诉我他的网站的reCAPTCHA不再工作。经过调查,我发现谷歌改变了它。我使用2014年11月19日的新文档升级了他们的网站,但它总是给我一个403错误。我试着只提交密钥,并返回一个带有错误和错误的JSON结果。我只是提交了g-recaptcha-response字段的响应,并且还返回了带有错误的JSON结果。只要我使用http_build_query将它们放到一个字符串中,我就会从Google获得403禁止。Ne reCAPTCHA给我一个403错误
我正在使用新的http://www.google.com/recaptcha/api/siteverify URL。我使用PHP cURL使用以下代码提交给它:
$post_data = array('response'=>$response, 'secret'=>$privatekey);
$curlPost = http_build_query($post_data, '', '&');
$ch = curl_init();
//Set the URL of the page or file to download.
$url = 'http://www.google.com/recaptcha/api/siteverify';
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);
$data_json = curl_exec($ch);
任何帮助将不胜感激。
你的JSON结果是什么? (另外,我对reCAPTCHA知之甚少,但从[文档](https://developers.google.com/recaptcha/docs/verify)的外观来看,您不应该使用GET请求,而应该) – 2014-11-24 21:59:44