Asp.net mvc ASP.NET MVC视图中的Google Recatch自定义
我正在使用google reCaptch进行captca验证,因此我想根据我的应用程序设计进行自定义。 我有一个google reCaptch的用户html助手。 那么,我如何使用razor html helper在视图中自定义其高度、宽度和其他外观呢?Asp.net mvc ASP.NET MVC视图中的Google Recatch自定义,asp.net-mvc,razor,recaptcha,mvcrecaptcha,Asp.net Mvc,Razor,Recaptcha,Mvcrecaptcha,我正在使用google reCaptch进行captca验证,因此我想根据我的应用程序设计进行自定义。 我有一个google reCaptch的用户html助手。 那么,我如何使用razor html helper在视图中自定义其高度、宽度和其他外观呢? 我意识到这篇文章有点过时,但我最近也做了类似的事情,所以我想我可以帮你(如果你还需要的话) 我知道您想使用Html帮助程序,但是经过广泛的研究,没有一个真正提供这种帮助。有一个关于如何实现自己的风格和验证的指南-一个好主意是将验证抽象到接口后面
我意识到这篇文章有点过时,但我最近也做了类似的事情,所以我想我可以帮你(如果你还需要的话) 我知道您想使用Html帮助程序,但是经过广泛的研究,没有一个真正提供这种帮助。有一个关于如何实现自己的风格和验证的指南-一个好主意是将验证抽象到接口后面,以便进行适当的测试 您可以或多或少地从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");
和