【发布时间】:2014-09-03 15:04:34
【问题描述】:
我们实施了自定义身份验证。用户名和密码在请求正文中发送。如果用户或密码无效,则服务器返回 HTTP 401。服务器使用 C#、MVC3 和 .NET 4.0 实现。
我们遇到的问题是,如果客户端收到 401,那么它会自动重新发送相同的请求 2 次。实际上,这只是 iOS 的问题。 iOS 家伙说它发生在低级别,并且在应用程序中失控。所以可能服务器应该能够说客户端不再发送请求。
这对我们来说是个问题,因为我们使用 Active Directory,并且在密码无效的情况下,我们会尝试 3 次而不是仅一次。所以帐户很快就被意外锁定了。
我发现这个document 说
401 未经授权
...客户端可以使用合适的授权头域重复请求。
如何返回 HTTP 401 并告诉客户端不再重复请求?
【问题讨论】:
标签: c# ios asp.net-mvc-3 http-status-codes http-status-code-401