日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

WebService 用户名密码验证

發布時間:2025/6/15 编程问答 57 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WebService 用户名密码验证 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
原文:WebService 用戶名密碼驗證

在項目開發的過程中,WebService是經常要用的,當調用WebService方法時,需要經過服務的驗證才可以調用,一般就是用戶名/密碼驗證,還有一個就是證書.下面程序使用的是用戶名/密碼的方式,很簡單的一個程序.

項目截圖:

先看服務端的代碼(ws_Service)

MySoapHeader.cs?? 這里通過繼承SoapHeader實現對用戶名/密碼的驗證

?

public class MySoapHeader:System.Web.Services.Protocols.SoapHeader{private string userID = string.Empty;private string userPW = string.Empty;public string UserId{get { return userID; }set { userID = value; }}public string UserPW{get { return userPW; }set { userPW = value; }}public MySoapHeader(){ }public MySoapHeader(string name, string password){userID = name;userPW = password;}private bool IsValid(string nUserId, string nPassWord, out string nMsg){nMsg = "";try{if (nUserId == "admin" && nPassWord == "admin"){return true;}else{nMsg = "對不起,你無權調用Web服務";return false;}}catch{nMsg = "對不起,你無權調用Web服務";return false;}}public bool IsValid(out string nMsg){return IsValid(userID,userPW,out nMsg);}}

?

Service1.asmx文件代碼:

[WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)]public class Service1 : System.Web.Services.WebService { public MySoapHeader myHeader = new MySoapHeader();[WebMethod]public string GetMsg(){Thread.Sleep(5000);return "Hello World";}[SoapHeader("myHeader")][WebMethod(Description="獲取用戶列表")]public string GetMain(){string msg = "";if (!myHeader.IsValid(out msg)){return msg;}return "Main";} }

這里面有兩個方法,其中GetMsg方法是不需要驗證的,而GetMain方法需要進行用戶名/密碼的驗證,這個可以在客戶端調用時進行驗證.

?

客戶端添加對服務端的引用…

Program.cs文件

class Program {static void Main(string[] args){localhost.Service1SoapClient proxy = new ws_Client.localhost.Service1SoapClient();MySoapHeader header = new MySoapHeader();header.UserId = "admin";header.UserPW = "admin";string result = proxy.GetMain(header);//string result = proxy.GetMsg();Console.WriteLine(result);Console.ReadKey();}}

總結

以上是生活随笔為你收集整理的WebService 用户名密码验证的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。