2015-05-06 5 views
0

Возможно дублированный вопрос. У меня есть SPA и реализация reCaptcha, который я запускаю в localhost, и дает мне ошибку: «false \ nincorrect-captcha-sol». Код, который я использую, показан ниже, начиная с исходного источника here. Он работал раньше с теми же ключами (частными и публичными). Что я мог изменить или проверить, чтобы сделать его работу? СпасибоreCaptcha всегда возвращает false

  var httpClient = new HttpClient(); 
     var PK = ConfigurationManager.AppSettings["recaptchaKey"];//private key 
     var userIP = ((HttpContextBase)this.Request.Properties["MS_HttpContext"]).Request.UserHostAddress; 
     var uri = "http://www.google.com/recaptcha/api/verify"; 

     var postData = new List<KeyValuePair<string, string>>(); 
     postData.Add(new KeyValuePair<string, string>("privatekey", PK)); 
     postData.Add(new KeyValuePair<string, string>("remoteip", userIP)); 
     postData.Add(new KeyValuePair<string, string>("challenge", data.Challenge)); 
     postData.Add(new KeyValuePair<string, string>("response", data.Response)); 

     HttpContent content = new FormUrlEncodedContent(postData); 

     string responseFromServer = await httpClient.PostAsync(uri, content) 
       .ContinueWith((postTask) => postTask.Result.EnsureSuccessStatusCode()) 
       .ContinueWith((readTask) => readTask.Result.Content.ReadAsStringAsync().Result); 

     if (responseFromServer.StartsWith("true")) 
     { 
      return Contact(data); 
     } 

ответ

0

После документации ваши публикуют в неправильном URL Его siteverify вместо Просто убедитесь, в конце концов.

+0

Я перешел на указанный выше URL, но дошел до этой ошибки: «{\ n \" success \ ": false, \ n \" errors-codes \ ": [\ n \" invalid- ввод-ответ \ «\ п \„недостающей вход секретная \“\ п] \ п}» – mboko

+0

Вы не передавая нужные поля на POST собственные поля: секретируют ответ remoteip (это один является необязательным) Пожалуйста, взгляните на документ, который я вам отправил. – Brduca

Смежные вопросы