我有一个ASP.NET Web服务,当我偶尔调用它时,它会返回正确的响应,其他时候它会返回异常The request failed with HTTP status 401: OK.
有人可以请我提供一些原因,会发生?由于我无法在HTTP 401上找到任何内容,并且出现OK
的消息,因为200是正常的,而且401是未授权的...为什么我的Web服务在IIS6中托管会返回?什么原因导致“HTTP状态401:确定”
这里的直接异常详细信息:
Message:
The request failed with HTTP status 401: OK.
Stack Trace:
at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
at ws.Main.MethodName(param1, param2)
我会试图让这个错误是Wireshark数据包跟踪,当我随其提供的。
客户端和Web服务都是我们维护的代码。该异常只是间歇性发生,并非总是如此,通过的凭证详细信息是帐户的有效AD用户详细信息,而IIS网站使用的是Windows身份验证。
当收到401时,请求发出时请求的Web服务的数据是否存在?它可能是Web服务中的一个“bug”,或者Web服务无法找到请求的数据,并返回[401而不是404](http://stackoverflow.com/questions/4038981/)为了安全起见,或者它可能完全是其他的东西,它可以返回-http-401-for-a-non-existant-resource-404-to-preve) – Zabba
我收到非常零星的401:未经授权,所以这个问题引起了我的注意。你是否从服务中捕获异常细节?您是否有权访问服务器以查看事件查看器中是否有信息?我也试图得到一个分析器,所以我很好奇你发现了什么。您使用哪种绑定和安全模式? – McArthey
问题是我们看到这个401确定有时会返回,即使方法代码只是在另外一个空方法中返回True。正如我现在在我更新的问题中所说的,客户端和Web服务都是我们维护的代码。 – Seph