我正在尝试将身份验证标头发送到没有的WSDL
服务
WSDL
上指定的身份验证要求。
如何将Auth标头添加到Web服务的调用中?
我一直在使用的代码:
using System;
using System.Web.Services.Protocols;
namespace TesteSoap
{
class MainClass
{
public static void Main (string[] args)
{
WSDLService Service = new WSDLService();
/* How can I add authentication to the call of this webservice ? */
Service.get();
Console.WriteLine ("Hello World!");
}
}
}
答案 0 :(得分:15)
这个问题在其他链接中受到质疑,但是以与WSDL相关的不同方式包括用户/密码的问题。
它们不是同一个问题,但问题是相关的。
Michaelis.MockService是提取的Web服务库,您可以在link Mono项目网站上看到有关如何执行此操作的示例。
Michaelis.MockService service = new Michaelis.MockService();
// Create the network credentials and assign
// them to the service credentials
NetworkCredential netCredential = new NetworkCredential("Inigo.Montoya", "Ykmfptd");
Uri uri = new Uri(service.Url);
ICredentials credentials = netCredential.GetCredential(uri, "Basic");
service.Credentials = credentials;
// Be sure to set PreAuthenticate to true or else
// authentication will not be sent.
service.PreAuthenticate = true;
// Make the web service call.
service.Method();