我使用谷歌reCaptch进行captca验证,所以我想根据我的应用程序设计自定义。 我有谷歌reCaptch的用户html助手。 那么如何使用 razor html helper 在视图中自定义其高度,宽度和其他外观? 真的陷入了这个定制问题。
答案 0 :(得分:0)
我意识到这篇文章有点陈旧,但我最近做了类似的事 - 所以我觉得我可以提供帮助(如果你还需要的话)
我知道你想使用Html助手,但是我已经广泛地研究了这个问题 - 没有人真正提供这个。 The reCaptcha Developers Guide有一个关于如何实现自己的风格和验证的指南 - 一个好主意是将验证抽象到接口后面以允许正确的测试。
您可以或多或少地从reCaptcha文档中复制HTML示例,但验证代码看起来(以非常基本的形式)是这样的:
bool success;
const string url = "http://www.google.com/recaptcha/api/verify";
var ip = Request.UserHostAddress;
var d = new NameValueCollection
{
{ "privatekey", "6Ld-lN0SAAAAAB1c2Mzgu2pNjkLxn9W07FsAMLgc" },
{ "remoteip", ip },
{ "challenge", Request.Form["recaptcha_challenge_field"] },
{ "response", Request.Form["recaptcha_response_field"] }
};
using (var client = new System.Net.WebClient())
{
var response = client.UploadValues(url, d);
var result = Encoding.ASCII.GetString(response);
success = result.StartsWith("true");
}
if (!success)
ModelState.AddModelError("recaptcha_response_field", "Please enter the correct words");
else
Response.Write("CAPTCHA check is valid - we think you are a human");