如何在Asp.net中使用soapheader進(jìn)行驗(yàn)證?針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。
目前創(chuàng)新互聯(lián)公司已為數(shù)千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬空間、成都網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計(jì)、上林網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶(hù)導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶(hù)和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。第一步:用來(lái)作SOAP驗(yàn)證的類(lèi)必須從SoapHeader類(lèi)派生,類(lèi)中Public的屬性將出現(xiàn)在自動(dòng)產(chǎn)生XML節(jié)點(diǎn)中,即:
<soap:Header> <UserSoapHeader xmlns="/tupian/20230522/ <UserName>string</UserName> <Pwd>string</Pwd> </UserSoapHeader> </soap:Header> public class UserSoapHeader : SoapHeader { private string _userName; private string _pwd; //public的屬性將自動(dòng)生成xml結(jié)點(diǎn) public string UserName { get { return _userName; } set { _userName = value; } } public string Pwd { get { return _pwd; } set { _pwd = value; } } }
第二步:
在WebServices服務(wù)類(lèi)中添加一個(gè)public的屬性(必須public),類(lèi)型為從UserSoapHeader
/// <summary> /// WebService 的摘要說(shuō)明 /// </summary> [WebService(Namespace = "/tupian/20230522/ [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class WebService : System.Web.Services.WebService { //此屬性將作為驗(yàn)證屬性 //方法的SoapHeaderAttribute中的名稱(chēng)與此變量一致 public UserSoapHeader userHeader; public WebService() { //如果使用設(shè)計(jì)的組件,請(qǐng)取消注釋以下行 //InitializeComponent(); } [WebMethod] [SoapHeader("userHeader")]//這里很重要,名稱(chēng)要和定義的驗(yàn)證屬性名稱(chēng)一致! public string HelloWorld() { //進(jìn)入此方法后,userHeader將自動(dòng)有值 if (userHeader != null) { return "this is retVal : " + userHeader.UserName; } return " check not successed "; } }
第三步:在客戶(hù)端進(jìn)行調(diào)用:
1. 添加WEB引用
2. 實(shí)例化服務(wù)類(lèi)
3. 實(shí)例化SOAP頭(在客戶(hù)端將會(huì)自動(dòng)生成作來(lái)作驗(yàn)證的屬性;該屬性類(lèi)型為:UserSoapHeader;該屬性的名稱(chēng)為:UserSoapHeaderValue) ;自動(dòng)生成的屬性生成規(guī)則為:驗(yàn)證類(lèi)型名稱(chēng)+Value;
4. 調(diào)用服務(wù)提供的方法。
WebService s = new WebService(); UserSoapHeader a = new UserSoapHeader(); a.UserName = "admin"; a.Pwd = "zz"; s.UserSoapHeaderValue = a; //此屬性是自動(dòng)生成的 Response.Write( s.HelloWorld() ); // this is retVal : admin
關(guān)于如何在Asp.net中使用soapheader進(jìn)行驗(yàn)證問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。
新聞名稱(chēng):如何在Asp.net中使用soapheader進(jìn)行驗(yàn)證-創(chuàng)新互聯(lián)
網(wǎng)頁(yè)URL:http://aaarwkj.com/article34/dddspe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站建設(shè)、品牌網(wǎng)站建設(shè)、響應(yīng)式網(wǎng)站、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容