我已經使用AntiForgeryToken處理多個表單提交的代碼如下多AJAX表單提交通過防僞令牌
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
var ctx = filterContext.HttpContext;
var response = filterContext.HttpContext.Response;
var request = filterContext.HttpContext.Request;
string _antiForgToken = request.Form.GetValues("__RequestVerificationToken")[0];
if (ctx.Session["userform"] != null)
{
if (_antiForgToken.Equals(ctx.Session["userform"].ToString()))
{
//kill the request
response.StatusCode = 400;
response.StatusDescription = "Bad Request.";
}
}
else
ctx.Session["userform"] = _antiForgToken;
}
的代碼工作正常的(正常)的形式,但如果形式是它給人的問題通過ajax多次發佈(這是一個必需的功能)我有一個表格說例如Add Contacts
用戶添加一個聯繫人phone
並按下輸入(ajax)請求正常完成,但再次以相同的形式用戶選擇電子郵件並按回車在這裏我得到的錯誤,因爲AntiforgeryToken
是相同的,這是早先生成的我的問題是我如何刷新AntiForgeryToken
上ajax蘇CCESS
看到這個: - http://stackoverflow.com/questions/8271085/how-can- i-use-multiple-ajax-forms -with-antiforgery-validation-on-the-same-mvc3-p – 2011-12-19 08:42:50
@KuumeshKumawat它不是同一個問題 – tugberk 2011-12-19 09:11:29