使用jQuery验证RECAPTCHA

使用jQuery验证RECAPTCHA,jquery,recaptcha,Jquery,Recaptcha,我试图使用jQuery验证Recaptcha,但我不断收到一个错误,告诉我:对受限URI的访问被拒绝“代码:”1012 这就是我迄今为止所尝试的: var challengeVal = $("#recaptcha_challenge_field").attr("value"); var reponseVal = $("#recaptcha_response_field").attr("value"); var remoteIp = <%= "'" + Request.ServerVa

我试图使用jQuery验证Recaptcha,但我不断收到一个错误,告诉我:对受限URI的访问被拒绝“代码:”1012

这就是我迄今为止所尝试的:

 var challengeVal = $("#recaptcha_challenge_field").attr("value");
 var reponseVal = $("#recaptcha_response_field").attr("value");
 var remoteIp = <%= "'" + Request.ServerVariables["REMOTE_HOST"] + "'" %>
 var privateKey = 'MY_PRIVATE_KEY';

 var requestUrl = "http://api-verify.recaptcha.net/verify?privatekey=" + privateKey + "&remoteip=" + remoteIp + "&challenge=" + challengeVal + "&response=" + reponseVal;

 $.ajax({
    type: "POST",
    url: requestUrl,
    dataType: "json",
    success: function(data) {
       alert('response from recaptcha');
    },
    error: function() {
       alert("An error occured.");
    }
  });
var challengeVal=$(“#recaptcha_challenge_field”).attr(“值”);
var reponseVal=$(“#repatcha_response_field”).attr(“值”);
var remoteIp=
var privateKey='MY_PRIVATE_KEY';
var requestUrl=”http://api-verify.recaptcha.net/verify?privatekey=“+privateKey+”&remoteip=“+remoteip+”&challenge=“+challengeVal+”&response=“+reponseVal;
$.ajax({
类型:“POST”,
url:requestUrl,
数据类型:“json”,
成功:功能(数据){
警报(“来自recaptcha的响应”);
},
错误:函数(){
警报(“发生错误”);
}
});
有人试过这个,谁能给我指出正确的方向


谢谢。

出于安全原因,禁止JavaScript进行跨域XMLHttpRequests。有,但它们只有在控制两个域时才起作用


解决方案:对您自己的服务器进行AJAX调用,并通过服务器端代码与recaptcha联系。

可以从中找到并下载完整的演示。但是您仍然需要在此处为您的域生成公钥和私钥

@Magnar已经回答了安全方面的问题@GuidoLemmens2给出了一个PHP示例。我想从另一个堆栈中添加一些ASP.NET WebForms(vs.MVC)代码。

我想看看-> 这里有一个完整的javascript示例