精武堂自修软件,姜汝祥,雾临村
在webservice里添加如下类
public class mysoapheader : soapheader { private string strusername = string.empty; private string strpassword = string.empty; public mysoapheader() { } public mysoapheader(string username, string password) { this.strusername = username; this.strpassword = password; } #region 构造 /// <summary> /// 用户名 /// </summary> public string username { get { return strusername; } set { strusername = value; } } /// <summary> /// 密码 /// </summary> public string password { get { return strpassword; } set { strpassword = value; } } #endregion #region 检测是否正确登录 /// <summary> /// 检测是否正确登录 /// </summary> /// <returns></returns> public bool valideuser(out string msg ) { msg = ""; if (strusername == "admin" && strpassword == "123456") //在这里设置身份验证的账号和密码 { return true; } else { msg = "您无权调用次服务,请联系管理员!"; return false; } } #endregion }
在添加方法的时候添加如下代码
public mysoapheader header = new mysoapheader (); ////定义用户身份验证类变量header [system.web.services.protocols.soapheader("header")] [webmethod] public string getusername(string userid) { string msg = ""; if (!header.valideuser(out msg)) //验证 { return msg; }
var data = new dalwbstest.uuserop().getuser(userid); if (data != null) { return data.usernamecn; } else { return "没有此人"; } }
调用的时候就需要账号密码验证,代码如下
webreference.npomwbs webclient = new npomwbs(); mysoapheader head = new mysoapheader (); head.username = "admin"; //在webservice里设置的账号和密码 head.password = "123456"; webclient.mysoapheadervalue = head; string name = webclient.getusername(txtid.text); //调用需要验证的方法
在webservice发布iis的时候设置如下,添加访问该webservice需要的账户和密码
调用的时候就需要账号密码验证,否则会提示没有授权, 添加如下代码
webreference.npomwbs webclient = new npomwbs(); webclient.credentials = new system.net.networkcredential("admin","123456"); //这里就是你刚填写的账号和密码 string name = webclient.getusername(txtid.text); // 调用方法
在项目上右键添加服务引用
在高级里添加web引用,在弹出的框里输入你发布的webservice地址,点右侧箭头,点击添加引用,添加引用成功
添加引用成功后就可以调用了
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Net Core Web Api项目与在NginX下发布的方法
asp.net core3.1 引用的元包dll版本兼容性问题解决方案
IdentityServer4实现.Net Core API接口权限认证(快速入门)
ASP.NET Core MVC通过IViewLocationExpander扩展视图搜索路径的实现
网友评论