麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

C#實現SOAP調用WebService

2019-11-17 03:06:30
字體:
來源:轉載
供稿:網友

C#實現SOAP調用WebService

最近寫了一個SOA服務,開始覺得別人拿到我的服務地址,然后直接添加引用就可以使用了,結果"大牛"告知不行。

讓我寫一個SOAP調用服務的樣例,我有點愣了,因為沒做過這方面的,于是搞到了一個Demo,然后學習了下。

學習如下:

在.Net中有一個對象:WebRequest它可以在后臺直接請求服務的方法

第一步

var webRequest = (HttpWebRequest)WebRequest.Create(this.Uri);webRequest.Headers.Add("SOAPAction", String.Format("/"{0}/"", this.SoapAction));webRequest.ContentType = "text/xml;charset=/"utf-8/"";webRequest.Accept = "text/xml";webRequest.Method = "POST";webRequest.Credentials = this.Credentials;

A:上述代碼中,有一個SOAPAction,這個是你在IIS中部署好服務后,訪問服務,如下圖:

圖中告知了使用者:SOAPAction:"http://tempuri.org/

B:webRequest.Credentials = this.Credentials;

是調用服務的憑據

第二步

上述了解后,需要拼接SOAP請求的XML如圖中看到的那個SOAP信息

<?xml version='1.0' encoding='utf-8'?><soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>  <soap:Body>    <{0} xmlns='{1}'>{2}</{0}>  </soap:Body></soap:Envelope>

把圖片中對應的信息替換到{X}對應的位置,信息拼接就完成了!

第三步

            var webRequest = (HttpWebRequest)WebRequest.Create(this.Uri);            webRequest.Headers.Add("SOAPAction", String.Format("/"{0}/"", this.SoapAction));            webRequest.ContentType = "text/xml;charset=/"utf-8/"";            webRequest.Accept = "text/xml";            webRequest.Method = "POST";            webRequest.Credentials = this.Credentials;            // 寫入請求SOAP信息            using (var requestStream = webRequest.GetRequestStream())            {                using (var textWriter = new StreamWriter(requestStream))                {                    var envelope = SoapHelper.MakeEnvelope(this.SoapAction, this.Arguments.ToArray());                }            }            // 獲取SOAP請求返回            return webRequest.GetResponse();

這個就能獲取到請求返回的XML!

其實用了才知道,原來很簡單!

在說明一個使用情況,在調用時,會報404錯誤,拋出異常信息為:服務器未能識別 HTTP 標頭 SOAPAction

解決方法:

給.NET的WebService類(即.asmx文件下的類)添加屬性[SoapDocumentService(RoutingStyle=SoapServiceRoutingStyle.RequestElement)]

樣例:

百度網盤: http://pan.baidu.com/s/1hquuXHa

CSDN: http://download.csdn.net/detail/hater22/7490147


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美精品一区二区久久 | 欧美性受xxxxxx黑人xyx性爽 | 91色琪琪电影亚洲精品久久 | 宅男噜噜噜66国产免费观看 | av在线免费看网站 | 91丨九色丨国产在线观看 | 亚洲一区免费观看 | 欧美一级特黄aaaaaaa什 | 日韩中文字幕三区 | av免费在线观看不卡 | 日韩视频一二三 | 黄色av一区二区三区 | 奶子吧naiziba.cc免费午夜片在线观看 | 午夜视频在线观看91 | 亚洲一区国产二区 | 午夜视频你懂的 | 黄色一级片在线观看 | 国产午夜亚洲精品午夜鲁丝片 | 成人午夜激情视频 | 久久国产精品免费视频 | www.69色| 精品亚洲一区二区三区 | 国产精品视频六区 | 欧美成人三级视频 | 911精品影院在线观看 | 羞羞视频免费网站 | 黄色网址免费在线播放 | 一级成人欧美一区在线观看 | asiass极品裸体女pics | 黄色成人在线播放 | 欧美视频在线一区二区三区 | 天天夜夜草 | 日韩中字幕 | 嫩草影院在线观看网站成人 | h视频在线免费观看 | 久久艳片 | 性 毛片| 久草在线小说 | 一级片999 | 欧美一级网 | 污视频在线免费播放 |