Asp.net mvc 401 Jquery post和MVC出现未经授权的错误
我正在构建一个使用Windows身份验证的MVC应用程序。我想通过使用jQueryPost向服务器发送帖子来处理dropdownlist更改事件 下面是我要调用的控制器方法:Asp.net mvc 401 Jquery post和MVC出现未经授权的错误,asp.net-mvc,asp.net-mvc-3,jquery,Asp.net Mvc,Asp.net Mvc 3,Jquery,我正在构建一个使用Windows身份验证的MVC应用程序。我想通过使用jQueryPost向服务器发送帖子来处理dropdownlist更改事件 下面是我要调用的控制器方法: [HttpPost] public JsonResult UpdateConversion(int conversionId, int? conversionStandardId) { // Some statements here } 下面是处理下拉列表的onchange事件的javascript函数: fun
[HttpPost]
public JsonResult UpdateConversion(int conversionId, int? conversionStandardId)
{
// Some statements here
}
下面是处理下拉列表的onchange事件的javascript函数:
function onConversionValueChange() {
var input = $(this);
var conversionId = input.attr('id').replace('ConversionFor', '');
var selectedValue = input.val();
if (selectedValue == '') {
$.post(Conversions._UpdateConversionURL, { conversionId: conversionId }, onConversionValueChanged);
}
else {
$.post(Conversions._UpdateConversionURL, { conversionId: conversionId, conversionStandardId: selectedValue }, onConversionValueChanged);
}
}
我不认为这些方法有什么问题,因为当我最初加载页面并进行更改时,post调用会工作好几次。但一段时间后,它在一个事件中调用post 3次,并在所有事件中返回401个未经授权的错误。尽管第三次通话似乎很成功
有人能帮我吗?谢谢。这正是Windows身份验证(NTLM)的工作原理。这是一种质询/响应身份验证方案,其中客户端发送请求,服务器通过生成nonce质询客户端以证明其具有正确的凭据,然后客户端进行身份验证。您可以在此处阅读更多内容: 通常,一旦通过身份验证,用户代理就不需要在后续请求中经历所有阶段,并且应该能够直接发送身份验证凭据