C#/.Net 3.5 を使用して reCaptcha Web サービスを使用するのに問題があります。問題は一般的にWebサービスを消費することだと思いますが。
String validate = String.Format("http://api-verify.recaptcha.net/verify?privatekey={0}&remoteip={1}&challenge={2}&response={3}", PrivateKey, UserIP, Challenge, Response);
WebClient serviceRequest = new WebClient();
serviceRequest.Headers.Add("ContentType","application/x-www-form-urlencoded")
String response = serviceRequest.DownloadString(new Uri(validate ));
エラーが nverify-params-incorrect であることを私に伝え続けます。つまり:
/verify へのパラメーターが正しくありませんでした。必要なすべてのパラメーターを渡していることを確認してください。
しかし、それは正しいです。秘密鍵を使用しています。IP アドレス (ローカル) は 127.0.0.1 で、チャレンジとレスポンスは問題ないようです。ただし、エラーが発生し続けます。
Webサービスと.Netを実際に使用したのはこれが初めてなので、これはサービスのリクエスト方法に問題があると確信しています。
データが確実に投稿されるように、これも試しました:
String queryString = String.Format("privatekey={0}&remoteip={1}&challenge={2}&response={3}",PrivateKey, UserIP, Challenge, Response);
String Validate = "http://api-verify.recaptcha.net/verify" + queryString;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(new Uri(Validate));
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = Validate.Length;
**HttpWebResponse captchaResponse = (HttpWebResponse)request.GetResponse();**
String response;
using (StreamReader reader = new StreamReader(captchaResponse.GetResponseStream()))
response = reader.ReadToEnd();
応答が得られた時点で失速しているようです。
何かアドバイス?
前もって感謝します