C# AntiForgery Asp.net Webforms
我在asp.net 4.5 web表单应用程序中使用它进行防伪C# AntiForgery Asp.net Webforms,c#,asp.net,C#,Asp.net,我在asp.net 4.5 web表单应用程序中使用它进行防伪 <form id="form1" runat="server" class="formCont" method="post"> <%= System.Web.Helpers.AntiForgery.GetHtml() %> 和页面加载 AntiForgery.Validate(); 很好用 现在我已经为来自javascript的ajax调用创建了mayasp通用处理程序。现在的问题是如何在我的
<form id="form1" runat="server" class="formCont" method="post">
<%= System.Web.Helpers.AntiForgery.GetHtml() %>
和页面加载
AntiForgery.Validate();
很好用现在我已经为来自javascript的ajax调用创建了may
asp通用处理程序。现在的问题是如何在我的泛型处理程序中验证相同的内容
我已经在ajax调用中尝试过了
data: { "__RequestVerificationToken": $("input[name=__RequestVerificationToken]").val() },
并在处理程序中尝试此AntiForgery.Validate()代码>但是我得到了一个例外
An exception of type 'System.Web.Mvc.HttpAntiForgeryException' occurred in System.Web.WebPages.dll but was not handled in user code
Additional information: The required anti-forgery form field "__RequestVerificationToken" is not present.
我已签入,正在上下文中获取值。请求[“\u RequestVerificationToken”]
我怎样才能解决这个问题。我找到了解决办法
它是在context.Request.Forms
集合中查找的,所以我做了如下小改动
将请求类型更改为post类型:“post”,
宾果游戏成功了。你发布数据的格式是什么?JSONapplication/x-www-form-urlencoded
?@mason默认情况下我没有指定任何内容。然后使用浏览器的网络工具查看AJAX请求。将其与普通帖子进行比较。找出区别。
An exception of type 'System.Web.Mvc.HttpAntiForgeryException' occurred in System.Web.WebPages.dll but was not handled in user code
Additional information: The required anti-forgery form field "__RequestVerificationToken" is not present.