Я использую reCaptcha на моей веб-странице под asp.net mvc. Этот веб-сайт имеет сертификат SSL, и у меня есть и проблема с reCaptcha.
Это мой код на View:
<script type="text/javascript" src="https://api-secure.recaptcha.net/challenge?k=***Public key****"> </script>
<noscript>
<iframe src="https://api-secure.recaptcha.net/noscript?k=***Public key****" height="300" width="500" frameborder="0"></iframe><br />
<textarea name="recaptcha_challenge_field" rows="3" cols="40"></textarea>
<input type="hidden" name="recaptcha_response_field" value="manual_challenge" />
</noscript>
и этот код у меня на AccountController:
private bool PerformRecaptcha()
{
var validator = new RecaptchaValidator
{
PrivateKey = "**Private Key***",
RemoteIP = Request.UserHostAddress,
Response = Request.Form["recaptcha_response_field"],
Challenge = Request.Form["recaptcha_challenge_field"]
};
try
{
var validationResult = validator.Validate();
if (validationResult.ErrorMessage == "incorrect-captcha-sol")
ModelState.AddModelError("ReCaptcha", string.Format("Please retry the ReCaptcha portion again."));
return validationResult.IsValid;
}
catch (Exception e)
{
ModelState.AddModelError("ReCaptcha", "an error occured with ReCaptcha please consult documentation.");
return false;
}
}
и моя версия библиотеки - 1.0.5.0.
Когда я загружаю форму регистрации, у меня появляется это предупреждение в Opera:
Сертификат сервера правил соответствует имени сервера. Хотите принять?
Если я принимаю этот сертификат, отображается код reCaptcha, но если нет, я не вижу код reCaptcha.
Можете ли вы помочь мне с этим?
Если вам нужна дополнительная информация о моем коде, не стесняйтесь спрашивать меня.
Привет.