2009-01-13 62 views
4

这是坚果。401在返回JSON的ASP.NET MVC应用程序中每返回第5个电话号码

我有一个ASP.NET MVC应用程序使用Windows身份验证,其中包括通过向他们返回JSON数据与许多ExtJs Javascript组件交互。

问题是,即使在用户成功通过身份验证之后,每次从MVC获取一些JSON数据的第5个请求都会导致两次“401未授权”响应,然后是“200 OK”响应。再一次,这每5次发生一次...为什么?我不知道。

有趣的是,每个响应都包含预期的JSON!

任何其他人经历过这种行为或对其发生的原因有任何想法?

谢谢 - WG

+0

这是否发生在开发环境中?你运行的是哪个版本的IIS? – Odd 2009-01-14 10:38:30

回答

3

看来,这是Windows身份验证如何工作的设计:

How do I stop 401 responses from TFS 2008

我有同样的问题,与运行在IIS 6 ASP.NET MVC应用程序,但使用Forms身份验证。它让我疯狂起来,直到我意识到我们的服务器已设置为通过NTLM为每个请求进行身份验证,因为它是内部Intranet服务器。所以这是一个非问题,因为请求在200响应后正常处理,而且似乎并没有让加载时间陷入停顿。

0

我有这种事发生在我一次,在我的情况,那是因为我有虚拟的网络文件夹,使用两种不同的身份验证方法:Windows身份验证和基本身份验证。

每隔一段时间,IIS都会尝试使用Windows身份验证来验证用户身份,而不是使用基本的HTTP身份验证(我发现它最常发生在Internet Explorer中)并返回“未经授权”响应。

尝试禁用未使用的身份验证方法,然后查看会发生什么情况。

相关问题