亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

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

通過HttpWebRequest在后臺對WebService進行調用

2019-11-17 03:56:07
字體:
來源:轉載
供稿:網友
  通過HttpWebRequest在后臺對WebService進行調用



目錄:

1  后臺調用Webservice的業務需求

2  WebService支持的交互協議

3  如何配置WebService支持的協議

4  后臺對WebService的調用

4.1 SOAP 1.1 后臺調用實例

4.2 SOAP 1.2 后臺調用實例



注:本文章的開發環境為VSS2008  .net FrameWork 3.5



本文章設計到使用的代碼示例的WebService 為

服務路徑:http://localhost/WebServiceTest/Service1.asmx

服務接口:

[WebMethod]

        public string HelloWorld(string StudentName,string PassWord)

        {

            return "Hello World";

        }



1  后臺調用Webservice的業務需求



   在實際開發環境中,我們常常調用WebService時,通過項目中引用現實部署的WebService的Asmx文件,生成客戶端代理類的方式。這種方式將和WebService進行了二次封裝,并以代理類的方式進行調用,有利用簡單,快捷的開發。

這種開發方式包含了兩個重要的問題

1) 在開發環境中必須可以訪問需要調用的WebService,在開發一些大公司的內網系統時,我們往往在開發環境中訪問不到,只僅僅在部署環境中訪問。

2)WebService的接口發生版本變更,我們的應用系統需要重新編譯并部署。

    

在發現以上的困惑后,直覺告訴我們,我們需要一種直接通過交互協議的方式進行訪問WebService。就像網頁爬蟲一樣,去交互業務操作。





2  WebService支持的交互協議



  

WebService支持 三種方式

1)Http post 方式(注意這種方式只對于本機調試使用,在web服務部署在其他機器上,應用程序不能通過 Http Post方式調用)

       具體交互格式如下:

POST /WebServiceTest/Service1.asmx/HelloWorld HTTP/1.1

Host: localhost

Content-Type: application/x-www-form-urlencoded

Content-Length: length



StudentName=string&PassWord=string



2)SOAP1.1協議  注意Soap協議是基于HTTP的協議,也就是在HTTP的基礎上再次封裝

交互格式如下:

POST /WebServiceTest/Service1.asmx HTTP/1.1

Host: localhost

Content-Type: text/xml; charset=utf-8

Content-Length: length

SOAPAction: "http://tempuri.org/HelloWorld"



<?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>

    <HelloWorld xmlns="http://tempuri.org/">

      <StudentName>string</StudentName>

      <PassWord>string</PassWord>

    </HelloWorld>

  </soap:Body>

</soap:Envelope>



3)SOAP1.2 協議

交互格式如下:

POST /WebServiceTest/Service1.asmx HTTP/1.1

Host: localhost

Content-Type: application/soap+xml; charset=utf-8

Content-Length: length



<?xml version="1.0" encoding="utf-8"?>

<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">

  <soap12:Body>

    <HelloWorld xmlns="http://tempuri.org/">

      <StudentName>string</StudentName>

      <PassWord>string</PassWord>

    </HelloWorld>

  </soap12:Body>

</soap12:Envelope>



3  如何配置WebService支持的協議



WebService支持的協議 包含兩種 Soap1.1 Soap1.2 對于webService 來講可以通過配置文件配置,支持那些協議,默認的情況下 兩種協議都支持。

具體的配置方式為:

在配置文件中

<webServices>

  <PRotocols>

    <add name="HttpSoap1.2"/>

    <add name="HttpSoap1.1"/>

</protocols>

</webServices>





4  后臺對WebService的調用



4.1 SOAP 1.1 后臺調用實例



                  string   str1="/"雙引號/"";   

                Console.WriteLine("新開始進行連接測試");



                string param = @"<?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>

                                            <HelloWorld xmlns=""http://tempuri.org/"">

                                              <StudentName>1</StudentName>

                                              <PassWord>1</PassWord>

                                            </HelloWorld>

                                          </soap:Body>

                                        </soap:Envelope>";

                byte[] bs = Encoding.UTF8.GetBytes(param);

                HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create("http://fox-gaolijun/Short_Message/Service1.asmx");



                myRequest.Method = "POST";

                myRequest.ContentType = "text/xml; charset=utf-8";

                myRequest.Headers.Add("SOAPAction", "http://tempuri.org/HelloWorld");

                myRequest.ContentLength = bs.Length;



                Console.WriteLine("完成準備工作");

                using (Stream reqStream = myRequest.GetRequestStream())

                {

                    reqStream.Write(bs, 0, bs.Length);

                }

                

                using (HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse())

                {

                    StreamReader sr = new StreamReader(myResponse.GetResponseStream(), Encoding.UTF8);

                    responseString = sr.ReadToEnd();

                    Console.WriteLine("反饋結果" + responseString);

                }   

                Console.WriteLine("完成調用接口");



            }

            catch (Exception e)

            {

                Console.WriteLine(System.DateTime.Now.ToShortTimeString() + "LBS EXCEPTION:" + e.Message);



                Console.WriteLine(e.StackTrace);

            }



4.1 SOAP 1.2 后臺調用實例



Console.WriteLine("新開始進行連接測試");

                string responseString;

                string param = @"<?xml version=""1.0"" encoding=""utf-8""?>

                                <soap12:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" xmlns:soap12=""http://www.w3.org/2003/05/soap-envelope"">

                                 <soap12:Body>

                                    <HelloWorld xmlns=""http://tempuri.org/"">

                                        <StudentName>1212</StudentName>

                                         <PassWord>12121</PassWord>

                                    </HelloWorld>

                                </soap12:Body>

                            </soap12:Envelope>";

                byte[] bs = Encoding.UTF8.GetBytes(param);

                HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create("  http://fox-gaolijun/Short_Message/Service1.asmx");



                myRequest.Method = "POST";

                myRequest.ContentType = "application/soap+xml; charset=utf-8";

                myRequest.ContentLength = bs.Length;

             

                Console.WriteLine("完成準備工作");

                using (Stream reqStream = myRequest.GetRequestStream())

                {

                    reqStream.Write(bs, 0, bs.Length);

                }



                using (HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse())

                {

                    StreamReader sr = new StreamReader(myResponse.GetResponseStream(), Encoding.UTF8);

                    responseString = sr.ReadToEnd();

                    Console.WriteLine("反饋結果" + responseString);

                }

                Console.WriteLine("完成調用接口");



            }

            catch (Exception e)

            {

                Console.WriteLine(System.DateTime.Now.ToShortTimeString() + "LBS EXCEPTION:" + e.Message);



                Console.WriteLine(e.StackTrace);

            }


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91高潮精品免费porn| 91精品国产成人www| 日韩av片免费在线观看| 免费不卡在线观看av| 亚洲国产另类 国产精品国产免费| 精品成人乱色一区二区| 国产精品夜色7777狼人| 中文字幕亚洲一区| 欧美一级淫片播放口| 亚洲视频第一页| 日本高清不卡在线| 久久久久久久影院| 国产欧美日韩中文| 日韩美女在线观看一区| 欧美性色19p| 日韩亚洲综合在线| 另类图片亚洲另类| 国产午夜精品免费一区二区三区| 国产欧美日韩免费| 日韩欧美在线字幕| 亚洲福利视频在线| 亚洲欧美日韩精品久久奇米色影视| 欧美富婆性猛交| 成人激情视频小说免费下载| 国产性色av一区二区| 国产日韩欧美中文| 91av在线视频观看| 亚洲跨种族黑人xxx| 日韩精品有码在线观看| 亚洲free性xxxx护士hd| 久久综合网hezyo| 日本一本a高清免费不卡| 亚洲视频欧洲视频| 免费99精品国产自在在线| 精品久久香蕉国产线看观看亚洲| 欧美美最猛性xxxxxx| 日本电影亚洲天堂| 日韩影视在线观看| 欧美成人午夜剧场免费观看| 欧美黄色片视频| 国语自产精品视频在线看一大j8| 亚洲人成电影网站色| 不卡在线观看电视剧完整版| 欧美高清视频在线观看| 久久福利视频导航| 91精品久久久久久久久久另类| 亚洲欧美日韩国产中文专区| 亚洲国产精品久久久久| 亚洲精品国产成人| 欧亚精品在线观看| 亚洲开心激情网| 欧美成aaa人片在线观看蜜臀| 社区色欧美激情 | 日韩a**中文字幕| 国产成人精品视频在线| 久久九九免费视频| 亚洲第一福利在线观看| 国产精品免费一区二区三区都可以| 97超级碰碰人国产在线观看| 国产精品电影在线观看| 久久精品这里热有精品| 尤物yw午夜国产精品视频| 亚洲国产精品久久久| 成人欧美在线视频| 国产欧美日韩最新| 97超级碰碰人国产在线观看| 成人乱色短篇合集| 国产精品99一区| 欧美日韩免费看| 性亚洲最疯狂xxxx高清| 91精品国产91久久久| xxxx性欧美| 成人xxxxx| 欧美激情性做爰免费视频| 最新69国产成人精品视频免费| 亚洲欧美日韩久久久久久| 国产精品亚洲网站| 国产69精品久久久久99| 亚洲视屏在线播放| 九九热99久久久国产盗摄| 中文字幕日韩av| 欧美在线视频一二三| 日韩在线激情视频| 日韩经典第一页| 国产精品一区二区三区毛片淫片| 久久久精品欧美| 92福利视频午夜1000合集在线观看| 不卡av在线播放| 一区二区三区美女xx视频| 红桃av永久久久| 久久97精品久久久久久久不卡| 中日韩美女免费视频网站在线观看| 国产精品爽爽爽| 亚洲激情视频在线观看| 成人免费淫片视频软件| 欧美极品欧美精品欧美视频| 亚洲人成在线免费观看| 在线视频日本亚洲性| 日韩成人av在线播放| 亚洲国产成人精品久久| 亚洲第一精品自拍| 欧美中文字幕视频在线观看| 精品中文字幕乱| 色爱av美腿丝袜综合粉嫩av| 亚洲国产福利在线| 亚洲激情自拍图| 国产在线观看一区二区三区| 日韩中文字幕在线免费观看| 国产精品69精品一区二区三区| 国产免费一区二区三区在线观看| 亚洲视频在线视频| 韩国精品美女www爽爽爽视频| 国产精品1区2区在线观看| 国产精品久久久久久久久免费看| 欧美视频在线视频| 国产欧美日韩综合精品| 日韩一区av在线| 亚洲福利视频免费观看| 亚洲精品一区二区三区婷婷月| 国产亚洲精品一区二区| 午夜精品国产精品大乳美女| 国产精品91视频| 国产精品日韩欧美| 精品国产乱码久久久久久虫虫漫画| 国产精品成熟老女人| 亚洲免费视频一区二区| 日韩va亚洲va欧洲va国产| 综合av色偷偷网| 98精品国产高清在线xxxx天堂| 国产成人极品视频| 夜夜嗨av一区二区三区免费区| 国产一区二区三区日韩欧美| 精品亚洲一区二区三区| 亚洲国产成人在线播放| 91国产在线精品| 亚洲已满18点击进入在线看片| 青青草成人在线| 日韩电影免费观看在线观看| 一区二区三区高清国产| 狠狠色狠狠色综合日日小说| 精品爽片免费看久久| 欧美性在线观看| 欧美性感美女h网站在线观看免费| 91久久精品国产91久久| 欧美丝袜一区二区三区| 欧美日韩一区二区免费在线观看| 日本19禁啪啪免费观看www| 久久香蕉国产线看观看网| 在线看日韩av| 欧美精品一区二区三区国产精品| 久久成人18免费网站| 久久91精品国产91久久久| 欧美激情小视频| 免费97视频在线精品国自产拍| 岛国精品视频在线播放| 久久成人这里只有精品| 国内外成人免费激情在线视频网站| 91精品国产高清自在线看超| 久久精品国产一区二区三区| 久久av中文字幕| 亚洲精品久久7777777| 国内免费久久久久久久久久久| 日本午夜在线亚洲.国产| 日韩视频免费在线观看|