【发布时间】:2009-09-03 22:57:13
【问题描述】:
据我所知,我正在按本书做所有事情,但是 .NET 客户端在向我的 (PHP) SOAP Web 服务发出请求时根本没有发送身份验证标头。我已经通过在 PHP 端记录原始发布数据来验证这一点,并且 .NET 从不发送任何身份验证标头。
这是我在调用我的 ExampleWebService Web 服务之前运行的代码:
ExampleWebService.PreAuthenticate = true;
NetworkCredential myCred = new NetworkCredential("myusername","mypassword");
CredentialCache myCache = new CredentialCache();
myCache.Add(new Uri(ExampleWebService.Url), "Basic", myCred);
ExampleWebService.Credentials = myCache;
据我了解,PreAuthenticate 应该在每个请求上强制发送我的 HTTP 基本身份验证凭据,而不考虑挑战。这仅适用于 IIS 托管服务吗?我在任何地方都没有发现这方面的记录。
任何在 .NET 世界中比我更有经验的人能阐明这一点,我将不胜感激,因为我快要拔掉头发了 ;-)
【问题讨论】: