星空网 > 软件开发 > ASP.net

调用webservice进行身份验证

   因为同事说在调用webservice的时候会弹出身份验证的窗口,直接调用会返回401,原因是站点部署的时候设置了身份验证(账号名称自己配置)。因而在调用的时候需要加入身份验证的凭证。

   调用webservice进行身份验证调用webservice进行身份验证

   至于如何获取身份验证的凭据呢?可以使用微软提供的NetworkCredential(命名空间是System.Net),代码如下。

   

using System;using System.Net;using webserviceSync.helloWebservice;namespace webserviceSync{  public partial class WebForm1 : System.Web.UI.Page  {    protected void Page_Load(object sender, EventArgs e)    {      MySoapHeader my = new MySoapHeader();      my.UserName = "";      Response.Write(webserviceClient.HelloWorld(my));    }    /// <summary>    /// 获取网络凭证    /// </summary>    /// <returns></returns>    public static NetworkCredential GetCredential()    {      //return new NetworkCredential("Administrator", "888888", "192.168.2.58");//简单直接      return (NetworkCredential)CredentialCache.DefaultCredentials;//需要本地设置凭据    }    /// <summary>    /// 验证凭证是否能通过    /// </summary>    /// <returns></returns>    public static bool IsVerifySucess()    {      string url = "http://192.168.2.58:7777/WebService.asmx?wsdl";      WebResponse webResponse = null;      try      {        WebRequest webRequest = WebRequest.Create(url);        webRequest.Credentials = GetCredential();        webRequest.Timeout = 15000;        webResponse = webRequest.GetResponse();      }      catch (Exception ex)      { throw ex; }      return true;    }    /// <summary>    /// 属性    /// </summary>    private static WebServiceSoapClient _webserviceClient = null;    /// <summary>    /// webservice服务    /// </summary>    public static WebServiceSoapClient webserviceClient    {      get      {        if (_webserviceClient == null)        {          bool isSucess = IsVerifySucess();          if (isSucess == true)          {            _webserviceClient = new WebServiceSoapClient();            _webserviceClient.ClientCredentials.Windows.ClientCredential = GetCredential();//这属性........          }        }        return _webserviceClient;      }    }  }}

如何在本地设置凭据可以参考http://jingyan.baidu.com/article/a3aad71aaa32eeb1fb0096c8.html

 




原标题:调用webservice进行身份验证

关键词:web

web
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

LAZADA年会带你玩转新玩法--全球精选:https://www.ikjzd.com/articles/18304
你猜都猜不出的亚马逊侵权方式…:https://www.ikjzd.com/articles/18306
亚马逊的Listing优化技巧:https://www.ikjzd.com/articles/18307
亚马逊新手必备知识:https://www.ikjzd.com/articles/18308
亚马逊美国站儿童珠宝儿童首饰儿童发卡儿童发箍ASTMF2923-14:https://www.ikjzd.com/articles/18309
2019年为什么有越来越多的淘宝和拼多多店群转战亚马逊?:https://www.ikjzd.com/articles/18311
月活用户超20亿!万亿市值巨头对中国商家进一步开闸放流 :https://www.kjdsnews.com/a/1836412.html
九寨沟周围必去的景点推荐:https://www.vstour.cn/a/363190.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流