Как отправить параметры входа в систему, чтобы получить WSDL - PullRequest
1 голос
/ 17 ноября 2011

У меня есть url моего wsdl-файла, который открывается в браузере с указанием имени пользователя и пароля. Как можно прагматично предоставить имя пользователя и пароль для этого wsdl, чтобы получить этот wsdl в формате xml. Ниже приведен код для справки.

    class Program    {
    static void Main(string[] args)
    {
                  WebServiceInfo webServiceInfo =        WebServiceInfo.OpenWsdl("https://xyz.com/partners?wsdl");

        Console.WriteLine(string.Format("WebService: {0}", webServiceInfo.Url));

}

        public class WebServiceInfo
        {
           WebMethodInfoCollection _webMethods = new WebMethodInfoCollection();
           Uri _url;
           static Dictionary<string, WebServiceInfo> _webServiceInfos =
               new Dictionary<string, WebServiceInfo>();

           private WebServiceInfo(Uri url)
           {
               if (url == null)
                   throw new ArgumentNullException("url");
               _url = url;
               _webMethods = GetWebServiceDescription(url);
           }

           public static WebServiceInfo OpenWsdl(string url)
           {
               Uri uri = new Uri(url);
               return OpenWsdl(uri);
           }
      }

Спасибо

1 Ответ

0 голосов
/ 17 ноября 2011

[при условии, что речь идет об аутентификации Windows ...]

System.Net.Credentials предоставляет средства для этого, не может проверить это прямо сейчас, но это должно быть близко к тому, что вам нужно сделать:

//request object provided for reference purposes
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create("http://url");
//add the following
request.Credentials = new System.Net.NetworkCredential(userName, password, domain);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...