2009-02-12 42 views
8

Tôi đang cố gắng để xác minh reCAPTCHA sử dụng jQuery, nhưng tôi cứ bị lỗi nói với tôi: Tiếp cận hạn chế URI bị từ chối "mã số:" 1012Thẩm reCAPTCHA với jQuery

Đây là những gì tôi đã cố gắng cho đến nay :

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."); 
    } 
    }); 

Bất cứ ai đã thử điều này, ai có thể chỉ cho tôi đi đúng hướng?

Cảm ơn.

Trả lời

16

JavaScript bị cấm tạo XMLHttpRequests đa miền vì lý do bảo mật. Có workarounds nhưng chúng chỉ hoạt động nếu bạn kiểm soát cả hai tên miền.

Giải pháp: Thực hiện cuộc gọi AJAX đến máy chủ của riêng bạn và liên hệ với recaptcha thông qua mã phía máy chủ.

0

@Magnar đã trả lời w/vì lý do bảo mật. @Guido Lemmens 2 đã đưa ra một ví dụ PHP. Tôi muốn thêm một số ASP.NET WebForms (so với MVC) mã từ một Stack question.

Các vấn đề liên quan