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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

基础拾遗------webservice详解

發布時間:2023/11/30 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基础拾遗------webservice详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

基礎拾遺

基礎拾遺------特性詳解

基礎拾遺------webservice詳解

基礎拾遺------redis詳解

基礎拾遺------反射詳解

基礎拾遺------委托詳解

基礎拾遺------接口詳解

基礎拾遺------泛型詳解

基礎拾遺-----依賴注入

基礎拾遺-----數據注解與驗證

基礎拾遺-----mongoDB操作

基礎拾遺----RabbitMQ

前言

  工作當中常用的服務接口有三個wcf,webservice和webapi.首先第一個接觸的就是webservice,今天大致總結一下。

1.webservice概念相關

1.1.Web Service也叫XML Web Service WebService

  是一種可以接收從Internet或者Intranet上的其它系統中傳遞過來的請求,輕量級的獨立的通訊技術。是:通過SOAP在 Web上提供的軟件服務,使用WSDL文件進行說明,并通過UDDI進行注冊。

1.2.XML:(Extensible Markup Language)擴展型可標記語言。

  面向短期的臨時數據處理、面向萬維網絡,是Soap的基礎。它被設計的宗旨是描述數據(XML),而非顯示數據(HTML)。后面單獨博客進行詳細介紹。

1.3.Soap:(Simple Object Access Protocol)簡單對象存取協議。

  是XML Web Service 的通信協議。其指導理念是“唯一一個沒有發明任何新技術的技術”。當用戶通過UDDI找到你的WSDL描述文檔后,他通過可以SOAP調用你建立的Web服務中的一個或多個操作。SOAP是XML文檔形式的 調用方法的規范,它可以支持不同的底層接口,像HTTP(S)或者SMTP。

<?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"><soap:Header><m:Trans xmlns:m="http://www.w3schools.com/transaction/"soap:mustUnderstand="1">234</m:Trans> </soap:Header><soap:Body><m:GetPrice xmlns:m="http://www.w3schools.com/prices"><m:Item>Apples</m:Item></m:GetPrice> </soap:Body> </soap:Envelope>

?

1.4.WSDL:(Web Services Description Language) Web服務描述語言

  WSDL 文件是一個 XML 文檔,用于說明一組 SOAP 消息以及如何交換這些消息。大多數情況下由軟件自動生成和使用。

  • Types - 數據類型定義的容器,它使用某種類型系統(一般地使用XML Schema中的類型系統)。
  • Message - 通信消息的數據結構的抽象類型化定義。使用Types所定義的類型來定義整個消息的數據結構。
  • Operation - 對服務中所支持的操作的抽象描述,一般單個Operation描述了一個訪問入口的請求/響應消息對。
  • PortType - 對于某個訪問入口點類型所支持的操作的抽象集合,這些操作可以由一個或多個服務訪問點來支持。
  • Binding - 特定端口類型的具體協議和數據格式規范的綁定。
  • Port - 定義為協議/數據格式綁定與具體Web訪問地址組合的單個服務訪問點。
  • Service- 相關服務訪問點的集合。
  • WSDL?描述了 Web服務的三個基本屬性:

    (1)服務所提供的操作

    (2)如何訪問服務

    (3)服務位于何處(通過 URL 來確定就 OK 了)

1.5.UDDI (Universal Description, Discovery, and Integration)

  是一個主要針對Web服務供應商和使用者的新項目。在用戶能夠調用Web服務之前,必須確定這個服務內包含哪些商務方法,找到被調用的接口定義,還要在服 務端來編制軟件,UDDI是一種根據描述文檔來引導系統查找相應服務的機制。UDDI利用SOAP消息機制(標準的XML/HTTP)來發布,編輯,瀏覽 以及查找注冊信息。它采用XML格式來封裝各種不同類型的數據,并且發送到注冊中心或者由注冊中心來返回需要的數據。

2. .net webservice

  上面的理論知識就算您不清楚,想要使用webservice還是沒有任何難度的,不信您往下看。

2.1.創建webservice(vs2013)

  2.1.1.新建一個webservice項目(文件->新建->項目->C#->Web服務應用程序)

  建完這個工程,我們將看到一個叫ServiceDome.asmx的文件,就先常見webfrom一樣它類似與aspx,我們直接打開cs代碼文件即可,asmx文件至今沒考慮過他有什么用.如果你什么都還沒做的話,將看見一個被注釋掉的helloworld的WebMethod,把注釋去掉,在運行,你就可以得 到最簡單的webservice運行實例了.點擊"helloworld"將執行其方法.顯然,這個函數對我們的意義只在于宏觀的了解了下web服務的寫 法.

  2.1.2.WebMethodAttribute詳解

[WebMethod(Description="備注信息")] public string HelloWorld() { return "Hello World"; }

  如上,WebMethodAttribute此特性是表示可以從遠程 Web 客戶端調用該方法。

  其中WebMethod包括以下6個屬性

  (1)Description:?

    是對webservice方法描述的信息。就像webservice方法的功能注釋,可以讓調用者看見的注釋。

  (2).EnableSession:

    指示webservice否啟動session標志,主要通過cookie完成的,默認false。

?

public static int i=0; [WebMethod(EnableSession=true)] public int Count() { i=i+1;return i; }

  如上Count()回和保存的session類似把信息保留下來。

  (3)MessageName:

    主要實現方法重載后的重命名.

[WebMethod] public int Add(int i, int j) { return i + j; } [WebMethod(MessageName="Add2")] public int Add(int i, int j, int k) { return i + j + k; } }

  (4).TransactionOption:

    指示 XML Web services 方法的事務支持。

  (5).CacheDuration:

    Web支持輸出高速緩存,這樣webservice就不需要執行多遍,可以提高訪問效率,而CacheDuration就是指定緩存時間的屬性。

public static int i=0; [WebMethod(EnableSession=true,CacheDuration=30)] public int Count() { i=i+1; return i; }

  (6).BufferResponse:

    配置WebService方法是否等到響應被完全緩沖完,才發送信息給請求端。普通應用要等完全被緩沖完才被發送的!只有當已知 XML Web services 方法將大量數據返回到客戶端時,才需要將 BufferResponse 設置為 false。對于少量數據,將 BufferResponse 設置為 true 可提高 XML Web services 的性能。當 BufferResponse 為 false 時,將對 XML Web services 方法禁用 SOAP 擴展名。

2.2.實現webservice

  特性說完就要說我們的webserviece服務接口的實現了,其實對于他的實現和我們實現一個類沒有太大的區別。、

[WebMethod]public string SynCardToDreams(int start, int end){try{DateTime begin = DateTime.Now;UserSignService userService = new UserSignService();bool ret = userService.SynChroCardToDreams(start, end);DateTime endTime = DateTime.Now;double total = (endTime - begin).TotalMinutes;string retmsg = ret ? "同步成功" : "同步失敗";return "本次同步用時 " + total + "分鐘;" + retmsg;}catch (Exception ex){return "同步失敗:" + ex.ToString();}}

2.3.調用webservice

在要使用服務的項目處右擊添加服務引用

然后在程序當中直接實例化調用此方法即可:

  //調用方法TestServiceReference.TestServiceSoapClient testService = new TestServiceReference.TestServiceSoapClient();int result = testService.Add(1, 2);

前端調用

<script type="text/javascript">$(function () {$.ajax({type: 'POST',url: 'TestService.asmx/ADD',data: '{ A: 4,B:4}',dataType: 'json',contentType: "application/json",success: function (data) {alert(data.d);}});}); </script>

?3.修改webservice服務地址:

3.1修改配置文件

<?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> </configSections> <system.serviceModel> <bindings> <basicHttpBinding> <binding name="PointStoreServiceSoap" /> </basicHttpBinding> </bindings> <client> <endpoint address="http://localhost:25548/WebServiceDom.asmx" binding="basicHttpBinding" bindingConfiguration="PointStoreServiceSoap" contract="PointStoreService.PointStoreServiceSoap" name="PointStoreServiceSoap" /> </client> </system.serviceModel> </configuration>

?

轉載于:https://www.cnblogs.com/kmonkeywyl/p/5726035.html

總結

以上是生活随笔為你收集整理的基础拾遗------webservice详解的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 99人妻碰碰碰久久久久禁片 | 中文字幕69 | 久久人妻精品白浆国产 | 亚洲第一精品网站 | 国产a线 | 国产成年人 | 日韩视频精品在线 | 日本护士体内she精2xxx | 日韩精品一区二区三区高清免费 | 日本精品一区二区三区在线观看 | h网址在线观看 | 久久精品这里只有精品 | 综合亚洲视频 | 日本黄xxxxxxxxx100 | av免费在线观看网站 | 99re这里只有精品首页 | 日本黄色三级视频 | 亚洲欧美日韩一区二区三区在线观看 | 丁香七月婷婷 | 色伊人影院| 国产真实交换夫妇视频 | 国产一区亚洲 | 久久夜夜操妹子 | 91麻豆一区二区 | 亚洲精品一区久久久久久 | 天堂国产精品 | www.777色 | 91麻豆产精品久久久久久 | 久久精品在线播放 | 日韩欧美在线视频播放 | 美女日批在线观看 | 特级精品毛片免费观看 | 免费国产一区二区 | 曰女同女同中文字幕 | 丰满岳乱妇一区二区三区 | 日韩乱淫 | 亚洲三级黄色片 | 免费看的黄色 | 九九久久国产 | 亚洲无圣光 | xxxwww国产 | 大地资源影视在线播放观看高清视频 | 亚洲中文字幕第一区 | 免费在线视频你懂的 | 爱情岛论坛永久入口 | 亚洲乱熟女一区二区三区小说 | 网站久久| 欧美精品日韩精品 | 亚洲国产精品99 | 亚洲福利片| av无码久久久久久不卡网站 | 欧美性大战久久久久久久蜜桃 | 成人午夜影院 | 成年人性生活视频 | 18在线观看免费入口 | av软件在线观看 | 五月天色婷婷丁香 | 精品一区二区三区入口 | 成人精品三级av在线看 | 国产精品黑人一区二区三区 | 99在线精品视频免费观看软件 | 日韩在线视频精品 | 日韩高清在线观看一区 | 我们的2018在线观看免费高清 | 欧美天堂 | 午夜小视频在线 | 高清免费毛片 | 国产黄频 | 色一情一区二 | 国产视频一区二区三区四区五区 | 日本人jizz | 国产精品久久久久影院色老大 | 一区二区欧美在线 | 狠狠久久久 | 国产xx在线观看 | 国产欧美一区二区精品忘忧草 | 久久盗摄 | 欧美大屁股熟妇bbbbbb | 91小视频| 色妞ww精品视频7777 | 久久久久无码国产精品不卡 | 视频在线观看电影完整版高清免费 | 成人亚洲天堂 | 日日日操操操 | 亚洲又粗又长 | av动漫网 | 国产午夜精品福利 | 97国产精东麻豆人妻电影 | yw视频在线观看 | 精品毛片 | 婷婷综合久久 | 欧美一区二区三区在线播放 | 午夜视频久久 | 人人妻人人澡人人爽欧美一区双 | 日本在线观看www | 日本一区二区色 | 亚洲成av人片一区二区梦乃 | 超碰香蕉 | 91香蕉视频在线看 |