reCaptcha在localhost中工作吗?

时间:2015-01-21 13:17:22

标签: javascript angularjs recaptcha

是吗?

一切正常,直到我将用户响应发送到Google服务器进行验证。这是发送响应的代码:

$http({
    method: "get",
    url: "https://www.google.com/recaptcha/api/siteverify",
    params: {
       secret: 'my-secret-key',
       response: $scope.response
    }
}).success(function (response) {
    console.log(response);
}).error(function (errResponse) {
    console.log(errResponse)
});

然后,我得到了这个:

请求的资源上没有“Access-Control-Allow-Origin”标头。因此,不允许原点“http://localhost:8000”访问。

1 个答案:

答案 0 :(得分:1)

是的,但它无法发送ajax / http请求来验证来自js的验证码。 Yous应该编写你自己的后端函数,它将发送这个请求。

这样的事情:

  1. 使用js回调获取验证码的响应(正如您已经做过的)
  2. 使用验证码响应向您自己的服务器发送ajax请求
  3. 从您的服务器发送带有响应和密钥的请求到https://www.google.com/recaptcha/api/siteverify
  4. 返回对您的ajax功能的回复。