调用webservice进行身份验证
2018-06-22 07:40:48来源:未知 阅读 ()
因为同事说在调用webservice的时候会弹出身份验证的窗口,直接调用会返回401,原因是站点部署的时候设置了身份验证(账号名称自己配置)。因而在调用的时候需要加入身份验证的凭证。
至于如何获取身份验证的凭据呢?可以使用微软提供的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
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- asp.net源程序编译为dll文件并调用的实现过程 2020-03-29
- 根据控件Id得到控件并对该控件进行操作 2020-03-04
- ASP.NET使用WebService实现天气预报功能 2020-01-20
- .NET CORE动态调用泛型方法详解 2019-12-31
- js文件编译成dll供页面调用的方法 2019-12-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash