日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Web Service 附件技术的发展及演变

發(fā)布時間:2025/3/17 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Web Service 附件技术的发展及演变 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Web Service 通常將業(yè)務(wù)數(shù)據(jù)封裝在 SOAP 主體或者 SOAP 消息附件中進(jìn)行傳輸,這些附件往往采用 Base64 編碼二進(jìn)制方式進(jìn)行封裝,這將大大增加待傳輸?shù)臄?shù)據(jù)量,消耗比較長的編碼時間和傳輸時間。隨著 SOA 以及 Web Service 技術(shù)的廣泛采用,由于網(wǎng)絡(luò)帶寬,延時的影響以及內(nèi)存大小的限制,越來越多的應(yīng)用對 Web Service 附件傳輸方式以及傳輸效率提出了更高的要求。

引言

本文對 Web Service 附件技術(shù)及其相關(guān)開發(fā)工具進(jìn)行了總結(jié),詳細(xì)介紹了 Web Service 附件技術(shù)的發(fā)展及其演變。近些年,先后有 SwA, DIME, WS-Attachments, PASwA, XOP, MTOM 等規(guī)范產(chǎn)生,經(jīng)過不斷的改進(jìn),SOAP 消息附件封裝方法已經(jīng)有了比較滿意的解決方案,附件傳輸和處理效率上得到了很大提高,其打包和傳輸方式也逐漸具有統(tǒng)一的處理方法。


Web Service 數(shù)據(jù)交換協(xié)議

Web Service 使用 SOAP 作為其標(biāo)準(zhǔn)的數(shù)據(jù)交換協(xié)議。SOAP 是一個基于 XML 的輕量級協(xié)議,用于在無中心、分布式環(huán)境中交換結(jié)構(gòu)化的數(shù)據(jù),該協(xié)議完全獨立于具體的系統(tǒng)平臺、軟件架構(gòu)和編程語言,提供了一種開放和統(tǒng)一的方式支持應(yīng)用間的集成和互操作。

SOAP 的設(shè)計目標(biāo)是簡單性和擴展性,有助于大量異構(gòu)程序和平臺之間的互操作性,從而使存在的應(yīng)用程序能夠被廣泛的用戶訪問。目前,SOAP 已經(jīng)成為開放性互聯(lián)網(wǎng)絡(luò)應(yīng)用中標(biāo)準(zhǔn)的數(shù)據(jù)交換技術(shù)。2000 年 W3C 推出了 SOAP1.1 版本,最新的 SOAP1.2 在 2007 年 4 月推出,并成為 W3C 的推薦規(guī)范。

SOAP 只是為上層應(yīng)用提供一個數(shù)據(jù)的載體,數(shù)據(jù)的具體語義由上層應(yīng)用定義。SOAP 報文最外層元素為 Envelope,即 SOAP 信封。Envelope 之下有兩個子元素:Header 元素和 Body 元素。其中 Body 元素是 SOAP 報文的主要數(shù)據(jù)載體,該元素是必需的。用于存放待交換的信息,具體表示為 Body 的子元素;Body 的每個直接子元素稱為 Body Block,用于存放具體應(yīng)用中在邏輯上相關(guān)的一組數(shù)據(jù);Header 元素是可選的,主要用于擴展機制,Header 的直接子元素稱為 Header Block,每個 Header Block 的擴展語義由基于 SOAP 的上層應(yīng)用來定義,常用的擴展包括安全、事務(wù)、消息相關(guān)性等。

SOAP 故障 (Fault) 報文是一種特殊的 SOAP 報文,用于在發(fā)生故障的場景中運載錯誤信息。在 SOAP 故障報文中,Body 有且僅有一個名為 Fault 的直接子元素,用于存放和具體故障有關(guān)的詳細(xì)錯誤信息,包括故障代碼、故障原因、發(fā)生故障的 SOAP 結(jié)點等。圖 1 為 SOAP 數(shù)據(jù)報文和 SOAP Fault 報文示意圖。

圖 1. SOAP 數(shù)據(jù)報文和 SOAP Fault 報文

在 Web Service 的實現(xiàn)中,經(jīng)常需要在 SOAP 報文中攜帶各種類型的附件 ( 如圖像、文檔等 ) 一起傳輸。例如,在典型的電子商務(wù)應(yīng)用中,客戶向商家詢問某種商品的詳細(xì)信息,商家向客戶發(fā)回 SOAP 格式的回復(fù)消息,其中包含有商品的詳細(xì)說明,商品的圖片等供客戶參考。這些附件可能是文本文件,XML 片段,二進(jìn)制文件等等。然而,SOAP 是一種基于 XML 的文本協(xié)議,只能使用可見字符組成的文本來表示數(shù)據(jù),無法在報文中直接包含其他格式的附件。因此,如何將 SOAP 報文同其他格式的附件組織在一起進(jìn)行傳輸便成為一個需要解決的重要問題。

為了對 SOAP 及其他 Web Service 標(biāo)準(zhǔn)進(jìn)行支持,Java 社區(qū)進(jìn)程組織 (JCP: Java Community Process) 提供并實現(xiàn)了 Java 方面的 Web 服務(wù)的原始標(biāo)準(zhǔn) JAX-RPC1.x (JavaTM APIs for XML based RPC) 和 JAX-WS (JavaTM API for XML-Based Web Services 2.0)。JAX-RPC 最早版本是 JAX-RPC1.0,進(jìn)過一段時間使用便更新到 JAX-RPC1.1,在 J2EE1.4 中包含 JAX-RPC1.1。JAX-RPC1.1 使用約 1 年后 JCP 再次對其進(jìn)行更新,考慮到 Web 服務(wù)中不單有 RPC Web 服務(wù),還有面向消息的 Web 服務(wù),因而將其更名為更合理的 JAX-WS。目前 JAX-WS2.0 仍在進(jìn)行當(dāng)中。JAX-RPC1.1 提供對 SOAP1.1 的支持,JAX-WS2.0 對 SOAP1.1 和 SOAP1.2 進(jìn)行支持。


Base64 編碼的二進(jìn)制 SOAP 附件

為了簡單和通用性,XML 被設(shè)計成了以文本的格式來表示數(shù)據(jù)。使用 SOAP 進(jìn)行傳遞的數(shù)據(jù)首先被序列化,也就是將數(shù)據(jù)轉(zhuǎn)換成字符串在 XML 文檔中傳送。在目的地,字符串再被反序列化,即再被轉(zhuǎn)換成表示原來的值的數(shù)據(jù)類型。把二進(jìn)制數(shù)據(jù)放入 SOAP 報文的最簡單的方法,就是使用 Base64 編碼的方式對其進(jìn)行編碼,以實現(xiàn)數(shù)據(jù)的序列化和反序列化。

Base64 是一種很常見的編碼規(guī)范,其作用是將二進(jìn)制序列轉(zhuǎn)換為可讀的 ASCII 字符序列,常用在需用通過文本協(xié)議傳輸二進(jìn)制數(shù)據(jù)的情況下,例如 HTTP 和 SMTP 協(xié)議。Base64 編碼基本原理是把每三個 8bit 的字節(jié)轉(zhuǎn)換為四個 6bit 的字節(jié),然后把 6bit 再添兩位高位 0,組成四個 8bit 的字節(jié),不滿四個字節(jié)的以 '=' 填充。因為 Base64 將輸入的數(shù)據(jù)編碼成只含有 {'A'-'Z', 'a'-'z', '0'-'9', '+', '/'} 這 64 個字符的串,所以稱之為 Base64 編碼。可以看出,轉(zhuǎn)換后的字符串理論上將要比原來的長 1/3。

在 W3C 的 XML Schema Part 2: Datatypes 規(guī)范中,定義了 base64Binary 類型,SOAP 報文中使用 Base64 編碼的二進(jìn)制內(nèi)容可以定義為該類型。一個使用 Base64 編碼的圖片數(shù)據(jù)在 SOAP 報文中的結(jié)構(gòu)如清單 1 所示:

清單 1. 一個使用 Base64 對數(shù)據(jù)進(jìn)行編碼的 SOAP 報文
<?xml version='1.0' ?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soap:Body><Car name="myCar"><BNZE xsi:type="xsi:base64Binary">L3EWw43eku34EEli34wejlE72=</BNZE></Car></soap:Body> </soap:Envelope>

MIME 與 SOAP Messages with Attachments

盡管使用 Base64 編碼能夠?qū)⒍M(jìn)制數(shù)據(jù)放入 SOAP 報文中進(jìn)行傳輸,然而,其效率非常低下。根據(jù)前面對 Base64 編碼原理的分析,采用 Base64 編碼將會引入 33% 的冗余尺寸,從而使 SOAP 消息變大;另外,對二進(jìn)制數(shù)據(jù)進(jìn)行編碼和解碼將造成較大的時間開銷,嚴(yán)重影響應(yīng)用程序的性能。鑒于這些問題,2000 年 12 月,W3C 組織推出了 SOAP 附件標(biāo)準(zhǔn):SOAP Messages with Attachments (SwA) 規(guī)范,將 SOAP 附件置于 SOAP 主體之外,基于 MIME 技術(shù)實現(xiàn)了 SOAP 報文同 SOAP 附件的封裝。

MIME (Multipurpose Internet Mail Extensions) 多用途互聯(lián)網(wǎng)郵件擴展,是當(dāng)前廣泛應(yīng)用的一種電子郵件技術(shù)規(guī)范,基本內(nèi)容定義于 RFC 2045-2049。MIME 出現(xiàn)之前,郵件中只能發(fā)送 ASCII 碼文本信息,如果要發(fā)送二進(jìn)制文件,如聲音和視頻等,難以實現(xiàn)。MIME 使得在郵件中支持多種不同編碼文件成為可能。盡管 MIME 一開始用于郵件傳輸中,現(xiàn)在 MIME 已經(jīng)成為 HTTP 協(xié)議標(biāo)準(zhǔn)的一部分。

MIME 消息由消息頭和消息體兩大部分組成,郵件頭與郵件體之間以空行進(jìn)行分隔。郵件頭包含了發(fā)件人地址 (From)、收件人地址 (To)、主題 (Subject)、MIME 版本 (MIME-Version)、內(nèi)容的類型 (Content-Type),內(nèi)容的傳輸編碼方式 (Content-Transfer-Encoding) 等信息,每條信息稱為一個域。郵件體包含郵件的內(nèi)容,類型由郵件頭的“Content-Type”域指明,分為簡單類型和 Multipart 類型。簡單類型如 text/plain, text/html 等,Multipart 類型表明將郵件體分為多個段,每段又分為段頭和段體,也以空行分隔。常見的 Multipart 類型有三種:Multipart/Mixed, Multipart/Related 和 Multipart/Alternative。如果郵件中要添加附件,而且附件之間有相互關(guān)聯(lián)關(guān)系,則使用 Multipart/Related。

SOAP 附件標(biāo)準(zhǔn) SwA 只針對 SOAP1.1 版本,其 MIME 類型為 Multipart/Related,表示文檔的多個部分是相關(guān)的,Multipart/Related 報頭的 type 參數(shù)值為”text/xml”。SOAP1.1 消息主體位于 Multipart/Related 結(jié)構(gòu)的第一段,其 Content-Type 的值也為”text/xml”。其余的 MIME 段為 SOAP 附件,附件可以是任意類型數(shù)據(jù),每個附件 MIME 段由段頭的 Content-ID 或者 Content-Location 唯一標(biāo)識,比較常用的是 Content-ID。

圖 2 為 SwA 規(guī)范下的帶附件 SOAP 報文結(jié)構(gòu)圖。圖中 SOAP 消息由 MIME 頭,一個封裝主體 SOAP1.1 消息的 MIME 段和一個或多個封裝 SOAP 附件的 MIME 段三部分組成。其中每部分以 MIME 邊界分隔,Context-Type 用于指定 MIME 段的數(shù)據(jù)的類型、Content Transfer-encoding 用于指定用于 MIME 段的編碼方式、Content-ID 或者 Content-Location 用于作為該 MIME 部件的標(biāo)識符。

圖 2. SwA 規(guī)范下帶有附件的 SOAP 報文

?

清單 2 是一個基于 SwA 的 SOAP 報文示例。例子中的圖像數(shù)據(jù)在一個 MIME 結(jié)構(gòu)中,通過屬性”href”被引用的,href 的值為一個 URI,URI 使用 MIME 頭的 Content-ID 值來找到附件。

清單 2. 一個基于 SwA 的 SOAP 報文
POST /test HTTP/1.0 Content-Type: Multipart/Related; boundary=MIME_boundary; type=text/xml Content-Length: XXXX SOAPAction: http://www.soapattach.com/test--MIME_boundary Content-Type: text/xml; charset=UTF-8 Content-Transfer-Encoding: 8bit<?xml version='1.0'?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><Car name="myCar"><Picture href = “cid:benz@pictures.soapattach.com”/></Car></soap:Body> </soap:Envelope>--MIME_boundary Content-Type: image/jpeg Content-Transfer-Encoding: binary Content-ID: <benz@pictures.soapattach.com>...binary JPEG image...--MIME_boundary--

SwA 避免了編碼的開銷和冗余,但是也帶來了一些新的問題。首先,SwA 使用字符串作為 MIME 結(jié)構(gòu)的定界符,為了解析出 MIME 結(jié)構(gòu),必須遍歷所有數(shù)據(jù),當(dāng)數(shù)據(jù)量較大時,效率非常低下,當(dāng) MIME 結(jié)構(gòu)中出現(xiàn)和定界字符串相同內(nèi)容的情況時,處理起來更復(fù)雜;其次,通用的 XML 技術(shù),如 XPath、XQuery、XSLT 以及 XML schema 等,對于 XML 文件中包含的二進(jìn)制內(nèi)容無法處理,因而也無法對符合 SwA 的 SOAP 報文使用各種通用的 XML 技術(shù)進(jìn)行處理。盡管程序知道附件數(shù)據(jù)的存在,但是文檔自身并不知道,另外,不同的 SOAP 報文處理器,以及 SOAP 消息和 WSDL 之間存在大量的互操作性問題。在 Web 服務(wù)互操作性組織 WS-I 的官方網(wǎng)站上可以找到其所總結(jié)的各種 Web Service 互操作性問題的詳細(xì)信息。

在 SwA 的具體實現(xiàn)中,涉及到三種主要的 API:SAAJ (SOAP with Attachments API for Java), JAXM (Java API for XML messaging), JAX-RPC。這三種 API 都是 JCP 所制定的 Web Service 的 Java 實現(xiàn)標(biāo)準(zhǔn)。SAAJ 是實現(xiàn) SwA 規(guī)范的 API,是從 JAXM 1.1 中分離出來的。SAAJ 包含許多類和接口,用來定義 SOAP 元素 (Envelope, Body, Header, Fault 等 ),XML 名稱空間,以及 MIME 附件等。通過 SAAJ 提供的 API 可以生成帶 MIME 附件的 SOAP 消息。J2EE1.4 包含了 SAAJ1.2,該版本支持 SOAP1.1,J2EE1.5 包含了最新的 SAAJ1.3。而 JAXM 是面向文檔的用于將 SOAP 消息以 XML 格式進(jìn)行異步傳送的 API。JAXM 客戶端使用 SAAJ 來構(gòu)造和解析 SOAP 消息。JAX-RPC 依賴于 SAAJ,提供了 RPC 方式 Web 服務(wù)實現(xiàn),定義了三種客戶端編程模型:Generated Stub、Dynamic Proxy 和 Dynamic Invocation Interface。


DIME 與 WS-Attachments

為了解決 SwA 的效率低下問題,2002 年 7 月,IBM 和微軟向 IETF 提交了直接因特網(wǎng)消息封裝提議 (DIME: Direct Internet Message Encapsulation),以及相應(yīng)的 WS-Attachments 規(guī)范,使用 DIME 和 WS-Attachments 對 SOAP 消息附件進(jìn)行封裝。

DIME 是一個輕量級二進(jìn)制消息格式,能夠?qū)⑷我飧袷綌?shù)據(jù)的多個記錄序依次序列化為流,使用有效的二進(jìn)制標(biāo)頭進(jìn)行說明。

DIME 記錄標(biāo)頭包含 DIME 版本、數(shù)據(jù)的類型信息、唯一標(biāo)識每個記錄的 ID、數(shù)據(jù)長度信息以及可選信息等。DIME 消息的第一個記錄在標(biāo)頭中設(shè)置了消息開始標(biāo)志 MB,最后一個記錄設(shè)置了消息結(jié)束標(biāo)志 ME。MB 和 ME 標(biāo)志均是一個 1 位字段,當(dāng)被置位時,分別表明 DIME 消息的開始和結(jié)束。對于較大的記錄或最初不知道數(shù)據(jù)大小的記錄,DIME 定義了“記錄區(qū)塊”,使用記錄區(qū)塊將單個記錄分解成多個塊。記錄區(qū)塊在標(biāo)頭中設(shè)置了區(qū)塊標(biāo)志 CF,表明該數(shù)據(jù)是分塊記錄的一部分,并且其后包含更多的數(shù)據(jù)。

數(shù)據(jù)字段攜帶 DIME 用戶應(yīng)用程序的有效負(fù)載。數(shù)據(jù)字段內(nèi)攜帶的數(shù)據(jù)的內(nèi)部結(jié)構(gòu)對 DIME 是不透明的。數(shù)據(jù)字段的長度必須是 4 個 8bit 數(shù)據(jù)的倍數(shù)。如果有效負(fù)載的長度不是 4 個 8bit 數(shù)據(jù)的倍數(shù),那么用全零 8bit 數(shù)據(jù)填充。填充部分并不算在數(shù)據(jù)長度字段中,并且絕不可以用超過 3 個 8bit 數(shù)據(jù)填充數(shù)據(jù)字段。圖 3 為 DIME 數(shù)據(jù)記錄格式

圖 3. DIME 數(shù)據(jù)記錄格式

DIME 根據(jù)某個記錄的開始位置,可以輕松地定位到下一個記錄的位置,只需將標(biāo)頭固定區(qū)域的長度與可選數(shù)據(jù)、ID、類型和數(shù)據(jù)部分的長度相加。這種以高效方式確定記錄長度對于在流的記錄之間快速移動十分重要。

DIME 本身只是一種用來對任意格式的數(shù)據(jù)記錄集合進(jìn)行打包的機制。它對于記錄有效負(fù)載的內(nèi)容、ID 字段中包含的內(nèi)容或者如何將 SOAP 消息封裝到 DIME 消息中等沒有任何要求。DIME 的記錄內(nèi)容沒有任何限制,其有效負(fù)載甚至可以包含其他 DIME 消息,只需將該記錄的類型設(shè)置為“application/dime”。

WS-Attachments 定義了如何使用 DIME 數(shù)據(jù)包發(fā)送包含附件的 SOAP 消息,標(biāo)識了 DIME 消息中哪些是 SOAP 消息,哪些是附件。對于包含附件的 SOAP 消息,將主要消息稱為“主 SOAP 消息部分”,將附加的部分稱為“從屬部分”。WS-Attachments 要求主 SOAP 消息部分必須包含在 DIME 消息的第一個記錄中,主 SOAP 消息部分通過使用 href 屬性引用附件,其值為 HTTP URL。此外,WS-Attachments 還說明了如何使用 DIME 記錄標(biāo)頭的 ID 字段引用特定的 DIME 記錄。

清單 3 是一個基于 WS-Attachments 的 SOAP 報文,其中 DIME 消息的從屬部分的 ID 為 uuid:6FF57555-8750-4555-8237-95ELIWEK87B4F,引用了此類附件的主 SOAP 消息部分的代碼如下所示:

清單 3. 基于 WS-Attachments 規(guī)范的 SOAP 報文
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" <soap:Body> <attach:responseMesssage xmlns:attach="http://example.net /attachment"><attach:message href="uuid: 6FF57555-8750-4555-8237-95ELIWEK87B4F"/> </attach:responseMessage></soap:Body> </soap:Envelope>

該消息正文中的 message 元素的 href 屬性用來指定 DIME 記錄的 ID。DIME 記錄中的數(shù)據(jù)可能是此消息所響應(yīng)的另一個 SOAP 消息,此時 DIME 消息的接收方可以從 DIME 消息指定的從屬部分中找到該消息。WS-Attachments 不但可以從主 SOAP 消息部分中引用 DIME 消息的從屬部分,也可以從從屬部分中進(jìn)行類似引用,這樣兩個從屬部分就可以相互引用,甚至一個從屬部分還可以引用主 SOAP 消息部分。

WS-Attachments 還說明了如何在 HTTP 請求中發(fā)送復(fù)合 SOAP 消息。這種情況下,HTTP 的 Content-Type 標(biāo)頭必須設(shè)為“application/dime”,HTTP 請求的正文為 DIME 消息而不是 SOAP 消息。

盡管 DIME 解決了 SwA 中遍歷定界符導(dǎo)致的效率低下問題, DIME 強迫開發(fā)者從 MIME 完全轉(zhuǎn)向 DIME,最后導(dǎo)致 DIME 和 WS-Attachments 并沒有得到廣泛應(yīng)用。


PASwA, XOP 和 MTOM

為了解決 SwA 導(dǎo)致的互操作性問題,2003 年 4 月 Microsoft, BEA, Canon, SAP 和 Tibco 等公司提出了規(guī)范 Proposed Infoset Addendum to SOAP Messages with Attachments (PASwA)。PASwA 基于 SwA 規(guī)范,是對 SwA 規(guī)范的補充。

PASwA 一個重要目標(biāo)是使 XML Infoset 具有一個統(tǒng)一的邏輯視圖,而不需要對由于 XML 中包含二進(jìn)制數(shù)據(jù),SwA 和 WSDL 之間的互操作性等問題而另外處理。XML Infoset 定義了一種抽象的方式,把 XML 文檔描述為一系列信息項,為需要引用 XML 文檔中的信息的規(guī)范提供了一致的定義。

PASwA 主要增加了如下內(nèi)容:

  • xmime:mediaType 屬性:用于指明 XML 文件中 base64 編碼部分的媒體類型,例如 xmime:mediaType 的值可以為 image/png,audio/mpeg,application/pkcs7-signature 等,這些值在 RFC 2045 和 RFC 2046 指定
  • xmime:Binary 類型:基于 xs:base64Binary 的復(fù)合類型,xmime:mediaType 為其可選屬性
  • Swa:Accept 屬性:用于申明其所支持的媒體類型,主要用于 WSDL 中
  • 帶有 herf 屬性的 xbinc:Include 元素:在 SOAP 消息中鏈接到相關(guān)的附件數(shù)據(jù)
  • 在 SOAP 消息頭中增加了 xbinc:DoInclude 和 swa:Representation 塊:xbinc:DoInclude 用于表示 SOAP 報文中包含 xbinc:Include 元素,SOAP 消息處理器應(yīng)該特殊處理;swa:Representation 表示允許 SOAP 節(jié)點發(fā)送緩存的 Web 資源

盡管 PASwA 并沒有被 W3C 所采納,然而,PASwA 直接導(dǎo)致了 W3C 的 XML 二進(jìn)制優(yōu)化打包 (XOP: XML-binary Optimized Packaging) 和 SOAP 消息傳輸優(yōu)化機制 (MTOM: Message Transmission Optimization Mechanism) 規(guī)范的產(chǎn)生。

XOP 使用 MIME 將原始二進(jìn)制數(shù)據(jù)引入到 XML 1.0 文檔中。XOP 是 XML 的可選序列化方法,在 XOP 數(shù)據(jù)包里,被命名為 base64 字符串的事物都可以作為其附件,方法與 SwA 類似。所不同的是:數(shù)據(jù)和附件之間的鏈接不是依靠應(yīng)用程序進(jìn)行處理,而是由該格式自行處理。XOP 使用 xop:Include 元素顯式地將內(nèi)容與附件關(guān)聯(lián)起來,并避免了 SwA 中存在的歧義性。

在 XOP 規(guī)范中主要有如下基本元素:Original XML Infoset,Optimized Content,XOP Infoset,XOP Document,XOP Package 和 Reconstituted XML Infoset。其定義如下:

  • Original XML Infoset 是需要被優(yōu)化的原始 XML Infoset
  • Optimized Content 是原始 XML Infoset 中需要被優(yōu)化的內(nèi)容
  • XOP Infoset 是使用 xop:Include 元素替換掉原來 XML Infoset 中的相應(yīng)信息得到的新的 XML Infoset
  • XOP Document 是符合 W3C recommendation 規(guī)范序列化后的 XOP Infoset
  • XOP Package 是 XOP Document 和 Optimized Content 的打包。XOP Package 是原始 XML Infoset 的一種可選的序列化方式
  • Reconstituted XML Infoset 是使用 XOP 包組成的 XML Infoset

一個完整的 XOP 消息包包括以下 3 個部分:MIME 頭,主體 SOAP 消息部分和附件部分。其中,MIME 頭的類型,即 Content-Type 的值總是為 Multipart/Related,其 type 參數(shù)總是等于主體 SOAP 消息的 Content-Type 的值,也就是 application/xop+xml;主體 SOAP 消息部分,用于存儲 XOP Infoset 格式的 SOAP Envelop;附件部分,用于存儲二進(jìn)制或者非二進(jìn)制附件數(shù)據(jù)。

清單 4 為原始 XML Infoset,其中 attach:Car 元素為原始 XML Infoset 中需要被優(yōu)化的內(nèi)容。清單 5 為序列化后的 XOP 包,該 XOP 包中只含有一個附件數(shù)據(jù)。

清單 4. 原始 XML Infoset
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"xmlns:xmlmime="http://www.w3.org/2004/06/xmlmime"><soap:Body><attach:Car name="Eric" xmlns:attach="http://example.cn/attachment"><attach:Picture xmlmime:content-type='image/jpeg'>WE72WEWTi2VuYJY=</attach:Picture></attach:Car></soap:Body> </soap:Envelope>
清單 5. 序列化后的 XOP Package
MIME-Version: 1.0 Content-Type: Multipart/Related; boundary=MIME_boundary; type= application/xop+xml; start="<paper@example.cn>"; start-info="application/xop+xml"--MIME_boundary Content-Type: application/xop+xml; charset=UTF-8 Content-Transfer-Encoding: 8bit Content-ID: <paper@example.cn><?xml version='1.0'?> <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"xmlns:xmlmime="http://www.w3.org/2004/06/xmlmime"><soap:Body><attach:Car name="Eric" xmlns:attach="http://example.cn/attachment"><attach:Picture xmlmime:content-type='image/jpeg'><xop:Include xmlns:xop='http://www.w3.org/2004/08/xop/include' href="cid:Eric@pictures.example.com"/></attach:Picture></attach:Car></soap:Body> </soap:Envelope>--MIME_boundary Content-Type: image/jpeg Content-Transfer-Encoding: binary Content-ID: <Eric@pictures.example.com>...binary JPEG image...--MIME_boundary--

在 SOAP 消息構(gòu)造和傳輸中使用 XOP 的過程稱為 MTOM。MTOM 的目的在于優(yōu)化 base64 編碼數(shù)據(jù)的傳輸。只有具有 xs:base64Binary 標(biāo)準(zhǔn)格式的字符組成的節(jié)點才可以被優(yōu)化。使用 MTOM,SOAP 消息包以 XOP 消息包的格式傳輸。

此外,為了解決 SwA 導(dǎo)致的互操作性問題,與 PASwA 和 MTOM 同時進(jìn)行的,還有 WS-I 的附件概要規(guī)范。2004 年 8 月 24 日,WS-I 推出了附件概要 AP1.0 (Attachment Profile Version 1.0) 規(guī)范,用以解決 SOAP 消息和基于附件的 Web 服務(wù)之間的互操作性問題,最新版為 2006 年 4 月 20 日發(fā)布的 AP1.0 第二版。AP1.0 和 WS-I 的另一規(guī)范,簡單 SOAP 綁定概要 SSBP1.0 (Simple SOAP Binding Profile 1.0),構(gòu)成了 WS-I 的基本概要 BP1.1(Basic Profile Version 1.1) 的補充規(guī)范。由于 AP1.0 和 PASwA 以及 MTOM 的沖突,很多開發(fā)者并沒有采用 AP1.0,而是直接轉(zhuǎn)向 MTOM。

在 JAX-RPC1.1 中,提供了對 BP1.0 的支持,JAX-WS2.0 已經(jīng)提供或者即將提供對 BP1.1, AP1.0, SSBP1.0, XOP 以及 MTOM 的支持。

目前,IBM WebSphere 產(chǎn)品已經(jīng)提供了對 MTOM 和 XOP 的支持,在其最新發(fā)布 WebSphere Application Server Feature Pack for Web Services 中可以找到相應(yīng)實現(xiàn),用戶只需安裝 WAS 6.1 feature pack for Web Services,關(guān)于 IBM 對 MTOM 更詳細(xì)的實現(xiàn)信息可見參考資料中的 WAS6.1 專門針對 Web Service 包的介紹。


總結(jié)

隨著 Web Service 技術(shù)的廣泛采用,對其附件技術(shù)的要求也越來越高,先后出現(xiàn)了 SwA, DIME, WS-Attachments, AP1.0, PASwA, XOP, MTOM 等規(guī)范。其中,DIME, WS-Attachments 已經(jīng)基本被淘汰了;目前使用比較廣泛的是 SwA 和 AP1.0,其缺點是存在大量的互操作性問題和效率問題;XOP 和 MTOM 提供了一種通用和高效的機制,其相應(yīng)規(guī)范仍在完善中,隨著其推廣應(yīng)用相信今后必將被廣泛采用。


參考資料

  • “SOAP Specifications”:W3C 上 SOAP1.1 和 SOAP1.2 規(guī)范的鏈接
  • “SOAP Optimized Serialization Use Cases and Requirements”:了解 SOAP 優(yōu)化的需求和應(yīng)用場景
  • “Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies”:MIME 第一部分:因特網(wǎng)消息格式
  • “Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types”:MIME 第二部分:媒體類型
  • “W3C XML Schema Part 2: Datatypes”:XML Schema 定義的數(shù)據(jù)類型,可以作為 SOAP 消息中的數(shù)據(jù)類型
  • “SOAP Messages with Attachments”:SOAP 消息附件規(guī)范
  • “直接因特網(wǎng)消息封裝 (Direct Internet Message Encapsulation)”:了解 DIME 更詳細(xì)的信息
  • “XML-binary Optimized Packaging”:XML 二進(jìn)制優(yōu)化打包規(guī)范
  • “SOAP Message Transmission Optimization Mechanism”:SOAP 消息傳輸優(yōu)化機制規(guī)范
  • “Basic Profile Version 1.0”,“Basic Profile Version 1.1”,“Attachments Profile Version 1.0”,“Simple SOAP Binding Profile 1.0”:WS-I 的基本概要 1.0,基本概要 1.1,附件概要 1.0 以及簡單 SOAP 綁定概要 1.0
  • “JavaTM APIs for XML based RPC”,“JavaTM API for XML-Based Web Services (JAX-WS) 2.0”,“JAX-RPC 與 JAX-WS 的比較”:JCP 提供的針對 Web Service 的 Java API
  • “Info Center of WAS Feature Pack for Web Services”:詳細(xì)介紹 IBM WebSphere Application Server6.1 針對 Web Service 的包,其中包含對 MTOM 和 XOP 的支持
  • “使用 XML 二進(jìn)制優(yōu)化打包規(guī)范加速 Web 服務(wù)應(yīng)用程序”,“使用 WebSphere Business Modeler 和 Rational Web Developer for WebSphere 將基于 XOP 的 Web 服務(wù)連接到外部服務(wù)”:了解 developworks 上其他關(guān)于使用 IBM 產(chǎn)品進(jìn)行 XML 優(yōu)化打包的方法

?

完。

?

轉(zhuǎn)載于:https://www.cnblogs.com/liyou-blog/p/4177872.html

總結(jié)

以上是生活随笔為你收集整理的Web Service 附件技术的发展及演变的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

国产中文字幕三区 | 国产99久久精品一区二区300 | 国产在线视频不卡 | 在线观看一区 | 骄小bbw搡bbbb揉bbbb| 国产99久久九九精品免费 | 亚洲精品88欧美一区二区 | 亚洲最大成人网4388xx | 免费在线观看av片 | av在线在线 | 精品中文字幕在线 | 国产区欧美 | 中文字幕一区二区三区在线播放 | 黄色在线看网站 | 91精品国自产在线观看 | 亚洲另类在线视频 | 99精品网站 | 亚洲成人免费观看 | 日韩精品一区二区三区免费观看视频 | 激情电影在线观看 | 亚洲精区二区三区四区麻豆 | 欧美日本啪啪无遮挡网站 | 日韩成人免费在线电影 | 一区二区三区免费 | 最近中文字幕在线 | 国产精品激情偷乱一区二区∴ | 69精品久久 | 天天干天天做 | 特及黄色片 | 粉嫩av一区二区三区入口 | 狠狠88综合久久久久综合网 | 亚洲免费激情 | 91精品国产福利在线观看 | 国产剧情av在线播放 | 亚洲理论视频 | 在线免费观看羞羞视频 | 中文字幕一区二区三 | 欧美激情第28页 | 五月婷婷丁香 | 国产一区二区三区免费视频 | 手机成人在线 | 手机成人免费视频 | 精品久久免费 | 天天操综合 | 欧美人体xx | 一级全黄毛片 | 国产福利一区二区三区在线观看 | 成人av网站在线观看 | 久久99视频免费 | 亚洲欧美视频在线 | 欧美另类高清 | 久草免费在线视频 | aaawww| 激情综合色播五月 | 一区二区不卡 | 亚洲美女免费精品视频在线观看 | 黄色免费观看视频 | 激情五月五月婷婷 | 夜夜躁狠狠躁日日躁视频黑人 | 欧美日韩免费一区二区三区 | 成人黄色免费在线观看 | 久久久久久久久久久电影 | 日韩午夜小视频 | 色偷偷人人澡久久超碰69 | 亚洲春色综合另类校园电影 | av电影一区 | 国产色就色 | 日本中文一级片 | 99热日本 | 天天操夜夜爱 | 国产区精品在线观看 | 91视频国产免费 | 一级黄色片网站 | 日本 在线 视频 中文 有码 | 天天操操操操操 | 欧美日韩一区二区免费在线观看 | 久久人人97超碰精品888 | 日韩av偷拍| 国产午夜精品视频 | 超碰人人干人人 | 2018亚洲男人天堂 | 天天干天天做天天爱 | 狠色狠色综合久久 | 国产精品一区二区三区久久 | 国产精品久久久久久久久久 | 国产原创av片 | 麻豆视传媒官网免费观看 | 国产精品福利久久久 | 狠狠躁日日躁 | 欧美激情视频在线观看免费 | 美女黄久久 | 99爱精品视频 | 91精品视频免费观看 | 亚洲一区二区三区四区精品 | av在线专区 | 免费观看丰满少妇做爰 | 97超碰人人爱 | 91入口在线观看 | 中文有码在线视频 | 青青色影院 | 中文字幕在线视频国产 | 激情五月看片 | 狠狠地操 | 色香蕉在线视频 | 天天艹天天操 | 涩涩资源网 | 久草剧场 | 国产成人a亚洲精品 | 国产小视频在线播放 | 亚洲人成精品久久久久 | 精品在线不卡 | 国产丝袜在线 | 偷拍精偷拍精品欧洲亚洲网站 | 波多野结衣视频网址 | 中文字幕av全部资源www中文字幕在线观看 | 激情婷婷欧美 | 亚洲丝袜中文 | 欧美日韩在线观看视频 | 大型av综合网站 | 亚洲视频精品在线 | 成年人黄色大片在线 | 国产成人免费在线 | 精品成人国产 | 日韩午夜三级 | 尤物九九久久国产精品的分类 | 婷婷午夜 | 97香蕉视频 | 亚洲国产影院av久久久久 | www蜜桃视频 | 一二区精品 | 天天综合久久综合 | 国产成人久久精品77777综合 | 色综合天天色综合 | 成人免费在线看片 | 亚洲午夜久久久综合37日本 | 国产中文字幕视频在线观看 | 亚洲综合视频在线观看 | 色综合久久五月 | 国产精品黄色 | 欧美成人69av| 亚洲精品tv久久久久久久久久 | 精品久久久久亚洲 | 免费在线播放黄色 | 国产一卡二卡在线 | 毛片视频网址 | 国产91精品在线播放 | 97视频免费在线 | 91九色国产视频 | 日韩视频一区二区三区在线播放免费观看 | 欧美少妇18p | 亚洲做受高潮欧美裸体 | 91精品国产网站 | 狠狠狠狠狠狠狠狠 | 天天爱天天操 | 探花视频免费观看 | 亚洲第一区在线观看 | 婷婷综合国产 | 国产小视频你懂的在线 | 中文av网 | 国产精品二区在线观看 | 久久精品麻豆 | 成人av高清 | 午夜aaaa| 日韩一区二区免费在线观看 | 婷婷久久亚洲 | 国产精品免费成人 | japanesexxxhd奶水 91在线精品一区二区 | 久久99九九99精品 | 狠狠做六月爱婷婷综合aⅴ 日本高清免费中文字幕 | 欧美日韩精品在线免费观看 | av中文字幕网址 | 亚洲波多野结衣 | 麻豆一区二区三区视频 | 中文字幕日韩av | 国产精品热视频 | 人人澡人| 久久亚洲人| 在线免费观看黄色 | 久久免费国产 | 四虎影院在线观看av | 人人干在线观看 | 亚洲污视频 | 夜又临在线观看 | 亚洲成人资源在线观看 | 中文字幕一区二区三区在线播放 | 99久e精品热线免费 99国产精品久久久久久久久久 | 久久伦理影院 | 天天操天天摸天天爽 | 91免费在线 | 久久只精品99品免费久23小说 | 韩国精品在线观看 | www.夜夜| 亚洲一级国产 | av中文字幕免费在线观看 | 在线观看亚洲专区 | 97精品在线观看 | 久久精品9| 成人久久18免费网站麻豆 | 久久av免费 | 丁香激情婷婷 | 最新不卡av | 久久国语露脸国产精品电影 | 2019精品手机国产品在线 | 午夜精品中文字幕 | 日本成人免费在线观看 | 久久久久久高清 | 精品国产黄色片 | 九九九九九精品 | 国产精品免费在线视频 | 国产a高清| 手机看片国产 | 国产一卡久久电影永久 | 五月婷婷色丁香 | av再线观看| 激情婷婷色 | www.五月婷| 国产黄色免费在线观看 | wwwww.国产 | www.看片网站| 首页中文字幕 | 在线观看国产麻豆 | www九九热 | 日韩av在线看 | 日韩色视频在线观看 | 一级片黄色片网站 | 亚洲精品在线看 | 国产黄色资源 | 又黄又爽又色无遮挡免费 | 欧美成年人在线观看 | 天堂网一区 | 成人一级电影在线观看 | 天堂av网站 | 超碰在线人 | 日韩在线免费 | 日本韩国中文字幕 | 天天看天天操 | 五月婷婷一区 | 91大神电影 | 久久999精品 | 伊人久久精品久久亚洲一区 | 99热.com | 国产精品久久久久999 | 欧洲成人av | 三级av免费看 | 亚洲视频在线观看 | 婷婷久久综合网 | 高清视频一区 | 一区二区三区四区久久 | 久久久精品影视 | 精品美女在线视频 | 一区二区三区 亚洲 | 日本在线观看黄色 | 国产精品女人网站 | 午夜在线免费观看 | 在线观看亚洲精品 | 国产精品一区二区62 | 香蕉视频在线网站 | 欧美另类重口 | 久久亚洲综合色 | 天天射网站 | 久久久午夜剧场 | 天天操天天操 | 日本精品一区二区三区在线观看 | 成人va在线观看 | 激情丁香综合五月 | 可以免费看av | 婷婷在线播放 | 99在线高清视频在线播放 | 久久国产精品免费 | 国产精品久久久久久久婷婷 | 激情中文在线 | 2019中文 | 亚洲蜜桃av| 91麻豆精品国产91久久久无限制版 | 在线观看av麻豆 | 国产一区在线免费观看视频 | 日韩狠狠操 | 视频在线观看99 | 亚洲伊人av| 一级黄色免费 | 精品久操 | 亚洲 中文 在线 精品 | 日韩在线一级 | 久久99久久精品国产 | 久久视频国产精品免费视频在线 | 福利区在线观看 | 97天天干| 伊人婷婷在线 | 国产在线 一区二区三区 | 国产福利免费看 | 婷婷久久五月 | 日韩中文字幕网站 | 久久影院午夜论 | 日日操狠狠干 | 综合久久五月天 | 精品视频免费观看 | 日韩一二三区不卡 | 婷婷成人亚洲综合国产xv88 | 久久久视频在线 | 夜夜天天干 | 久久久亚洲麻豆日韩精品一区三区 | 日日干网址 | 国产综合在线视频 | 天天玩天天操天天射 | 九九九在线观看 | 久久免视频| 天堂视频中文在线 | 久久男人免费视频 | 精品在线观看一区二区 | 久热免费在线观看 | 一区二区中文字幕在线播放 | 99热99热| 国产精品国产三级国产不产一地 | 三级在线视频播放 | 久久国语露脸国产精品电影 | 99草视频在线观看 | 日韩久久久久久久 | 免费观看成人网 | 韩国av免费在线观看 | 日韩在线国产精品 | 国产视频一区在线播放 | 国产一区二区中文字幕 | 美女久久99 | 91网在线观看 | 黄色毛片在线 | 国产精品女人久久久久久 | 天天天色综合 | 免费看的黄色片 | 日本中文字幕网址 | 久久躁日日躁aaaaxxxx | 国产精品久久 | 久久99亚洲网美利坚合众国 | 91精品国产麻豆 | 国产在线观看xxx | 免费在线观看视频a | 99久久99久久精品国产片 | 国产999| 成人97视频一区二区 | 麻豆视频在线免费观看 | 狠狠干婷婷 | 韩国一区二区三区视频 | 黄色aa久久| 色中色亚洲 | 六月婷婷久香在线视频 | 亚洲日本va在线观看 | 九九热在线精品视频 | 999久久久久 | 人人爽爽人人 | 国色天香第二季 | 国产精品系列在线观看 | 国产乱对白刺激视频不卡 | 欧美极品一区二区三区 | 亚洲国产精品成人va在线观看 | 国产色女| 91精品啪 | 久久99国产精品久久 | 在线导航av | 欧美a级在线免费观看 | 日韩大片在线免费观看 | 99视频在线免费播放 | 婷婷综合成人 | a色视频| www.福利视频| 日韩在线观| 欧美一区二区三区免费观看 | 成人h电影在线观看 | 国产一区二区三区网站 | 国产精品99久久久久久有的能看 | 久草在线费播放视频 | 蜜臀aⅴ精品一区二区三区 久久视屏网 | 四虎在线视频免费观看 | 一个色综合网站 | 亚洲日b视频 | 中文字幕在线观看免费高清电影 | av在线在线 | 高清av影院 | 中文字幕在线观看播放 | 天天干,天天干 | 亚洲最大成人网4388xx | 夜夜骑日日 | 久久久国产精品人人片99精片欧美一 | 成人在线播放视频 | 久久国产精品成人免费浪潮 | 日韩精品 在线视频 | 99久久99久久免费精品蜜臀 | 亚洲精品久久久久久中文传媒 | www.五月天激情 | 99久久精品免费看国产 | 免费看国产黄色 | 日韩欧美网址 | 精品国产一区二区在线 | 视频在线观看入口黄最新永久免费国产 | 五月亚洲婷婷 | 亚洲欧美日韩中文在线 | 久草视频免费在线观看 | 五月婷婷激情 | 亚洲免费av在线播放 | 在线观看亚洲国产精品 | 精品视频在线免费观看 | 亚洲狠狠操 | 亚洲国产大片 | 国产精品每日更新 | 男女精品久久 | 色妞久久福利网 | 午夜久久福利视频 | 亚洲伊人色 | 成年人免费在线观看 | 狠狠色狠狠综合久久 | 五月激情在线 | 国产电影一区二区三区四区 | 国产中文在线观看 | 日韩在线观看 | 一级黄色片毛片 | 成人av在线网址 | 国产在线 一区二区三区 | 欧美激精品 | 国产成人精品免高潮在线观看 | 美女视频黄网站 | 天天射天天爱天天干 | 欧美国产日韩一区二区三区 | 日韩免费观看视频 | av在线网站免费观看 | 伊人一级 | 成人av电影免费在线播放 | 最新的av网站 | 精品国产伦一区二区三区观看体验 | 久久免费高清视频 | 中文字幕亚洲欧美日韩2019 | 国产精品18p | 久久久精华网 | 国产123区在线观看 国产精品麻豆91 | 久久综合网色—综合色88 | 色综合久久精品 | 婷婷精品进入 | 欧美一级片在线播放 | 91视频电影| 香蕉网址 | 国产精品久久久久一区二区三区共 | 在线观看中文字幕dvd播放 | 91传媒免费观看 | 操操操夜夜操 | 国产免费观看久久黄 | 天天综合网在线观看 | 91丨九色丨首页 | 日韩视频1区 | av综合 日韩| 欧美日韩不卡一区二区三区 | 天天色天天操综合网 | 日日麻批40分钟视频免费观看 | 国产韩国日本高清视频 | 国产亚洲精品久久久久久无几年桃 | 日韩精品免费在线视频 | 又黄又刺激视频 | 国产小视频你懂的 | 婷婷丁香狠狠爱 | 激情五月婷婷综合 | 免费在线观看国产精品 | 国产精品久久久久久久免费 | av女优中文字幕在线观看 | a特级毛片 | 天天色天天操综合网 | 911国产| 免费av在线播放 | 91九色蝌蚪国产 | 91视频链接 | 国内精自线一二区永久 | 91丨九色丨蝌蚪丨老版 | 国产麻豆精品久久一二三 | 国产亚洲一区二区在线观看 | 日韩免费二区 | 91久久国产露脸精品国产闺蜜 | www五月天com | 婷婷四房综合激情五月 | 国产综合小视频 | 欧美日比视频 | 久一在线| 韩国在线视频一区 | 99精品欧美一区二区蜜桃免费 | 中文字幕免费看 | 国产福利av | 欧美综合在线视频 | 成人h电影在线观看 | 国产高清视频在线 | 国产一区二区综合 | 久久一区二区三区国产精品 | 色婷婷狠狠五月综合天色拍 | 国产在线一区观看 | 99色免费视频 | 91精品国产欧美一区二区 | 中文字幕免费在线 | 在线观看一区 | 最近日本字幕mv免费观看在线 | av日韩av| av网站播放 | 亚洲永久精品在线观看 | 国产拍在线 | 国产精品久久久久影视 | 精品国产激情 | 免费在线色电影 | 国语对白少妇爽91 | 视频一区在线免费观看 | 亚洲伦理精品 | 国产剧情在线一区 | 玖玖玖精品 | 国产又黄又爽无遮挡 | 黄色一级在线视频 | 日b视频国产 | 永久免费精品视频网站 | 我要色综合天天 | 日本黄色片一区二区 | 国产在线综合视频 | 国产精品小视频网站 | 日韩影视大全 | 久久国产午夜精品理论片最新版本 | 日韩最新av在线 | 国产精品成人一区二区 | 欧美亚洲精品在线观看 | 91精品夜夜 | 国产精品18久久久久白浆 | 久草网站在线观看 | 国产一区影院 | 正在播放一区 | 热久久精品在线 | 日本狠狠干 | 色老板在线 | 在线观看电影av | 国产成人福利在线观看 | 在线观看视频你懂得 | 国产九九九九九 | v片在线播放| 国产1区在线 | 国产成人精品久久久 | 99久久久久国产精品免费 | 黄色片网站av | 国产黄色电影 | 在线看黄网站 | 天天操操操操操操 | 91久久爱热色涩涩 | 91av在线不卡 | 六月丁香综合 | 中文国产在线观看 | 国产美女精品人人做人人爽 | 欧美色图一区 | 麻豆91在线观看 | 日韩三级在线 | 国内精品视频免费 | av片中文字幕 | 992tv在线观看 | 免费亚洲黄色 | 久久久久久高清 | 久久久久伊人 | 日本精品在线看 | 亚洲精品88欧美一区二区 | 欧美精品一级视频 | 99人久久精品视频最新地址 | 成人免费观看大片 | 一区二区三区四区精品 | 天天干,天天射,天天操,天天摸 | 在线观看视频色 | 成人免费在线观看电影 | 欧美a在线免费观看 | 国产黄色片一级三级 | 精品视频免费播放 | 国产综合精品一区二区三区 | 天堂av色婷婷一区二区三区 | 黄色日批网站 | 国产亚洲精品免费 | 亚洲国产精品视频在线观看 | 中文字幕中文字幕在线一区 | 久久久精品国产免费观看同学 | 不卡的av电影在线观看 | 亚洲国产精彩中文乱码av | 久久久视屏 | 久久影视中文字幕 | 欧美一区二区伦理片 | 999精品视频 | 亚洲三级在线 | 中文字幕丝袜 | 香蕉视频在线视频 | www.com黄色| 国产精国产精品 | 又黄又爽又刺激 | 亚洲理论电影网 | 亚洲精品久久久久久国 | 婷婷丁香激情五月 | 国产在线观看免费观看 | 日韩精品亚洲专区在线观看 | 精品久久久久久久久久国产 | 欧美动漫一区二区三区 | 日韩视频中文 | 精品亚洲欧美无人区乱码 | 国产成人三级在线 | 国产精品21区 | 国产理论影院 | 成人在线一区二区 | 日本在线观看中文字幕无线观看 | 综合久久久久 | 久久天天躁狠狠躁亚洲综合公司 | 久久久免费看片 | 啪啪精品| 国产精品成人一区二区三区 | 国产精品视频全国免费观看 | 亚洲激情在线 | 天天天天天天操 | 黄色免费av | 成人福利在线观看 | 丁香婷婷色综合亚洲电影 | 久久五月激情 | 精品91在线 | 精品国产1区2区3区 国产欧美精品在线观看 | 6699私人影院| 91av视屏| 久久r精品 | 欧美日韩中文字幕在线视频 | 欧美韩国在线 | 91免费视频黄 | 天天躁天天躁天天躁婷 | 免费福利片2019潦草影视午夜 | 国产在线播放观看 | av解说在线观看 | 成人在线视频免费观看 | 欧美日韩3p | 97香蕉久久国产在线观看 | 久久久精品一区二区 | 一区二区三区国产欧美 | 视频在线观看入口黄最新永久免费国产 | 中文字幕一区二区在线观看 | 久久99久久精品国产 | 国产午夜精品免费一区二区三区视频 | 精品国产成人av在线免 | www操操操 | 日韩欧美在线国产 | 日本中文字幕在线看 | 国产一区播放 | 欧美最猛性xxxxx(亚洲精品) | 色射爱| 国产精品久久久久久久久久久久午夜片 | 午夜视频免费 | 国产精品免费视频观看 | 久久久精品小视频 | 久久精品99国产精品亚洲最刺激 | 日韩性久久 | 91麻豆高清视频 | 探花视频在线观看免费版 | 日韩高清一二三区 | 免费视频你懂的 | 久久视频一区 | 99免费在线视频观看 | 日韩在线精品一区 | 色婷婷国产在线 | 国产精品一区二区无线 | 久久av中文字幕片 | 91精品在线免费视频 | 久久久午夜视频 | 一级全黄毛片 | 日韩欧美视频一区二区三区 | 天天爱综合 | 国产精品精品久久久久久 | 91热这里只有精品 | 一级黄色片在线免费看 | 97超碰人人 | 亚洲乱码中文字幕综合 | 在线观看国产一区二区 | av黄色成人| av动态图片| 在线观看91视频 | 国产一区二区精品久久 | 国内精品久久天天躁人人爽 | 狠狠躁18三区二区一区ai明星 | 日韩精品免费一区二区三区 | 久久99国产综合精品 | 欧美a级在线播放 | 中文字幕av免费观看 | 国产亚洲视频在线观看 | 一区三区在线欧 | 久久成人18免费网站 | 免费久草视频 | 色婷婷狠狠五月综合天色拍 | 欧美成人视 | 99精品在线直播 | www久久久久 | 亚洲欧洲美洲av | 四虎永久免费网站 | 国产精品欧美久久久久无广告 | 少妇bbw搡bbbb搡bbbb | 精品在线亚洲视频 | 最近中文字幕完整高清 | 国产夫妻自拍av | 亚洲精品乱码久久久久久按摩 | 国产精品自产拍在线观看桃花 | 五月天亚洲精品 | 狠狠干夜夜操 | 六月婷操 | 国产欧美在线一区二区三区 | 成人午夜电影免费在线观看 | 国产福利精品在线观看 | 天天天在线综合网 | 日日干天天爽 | 天天干天天操人体 | 人人添人人澡人人澡人人人爽 | 精品久久精品久久 | av中文字幕网址 | 亚洲色影爱久久精品 | 久久精品伊人 | www狠狠操| 91亚洲视频在线观看 | 免费黄a| 久久精品1区 | 中文字幕在线影视资源 | 九九视频热 | 在线中文视频 | 91精品久久久久久 | 成年人av在线播放 | 国产精品一区二区三区久久久 | 91伊人久久大香线蕉蜜芽人口 | 精品一区二区av | 激情婷婷欧美 | 黄色亚洲片 | 青青久草在线视频 | 97人人超碰在线 | 欧洲亚洲女同hd | 久久在线免费观看 | 日韩大片免费在线观看 | 日韩av免费观看网站 | 中文字幕亚洲不卡 | 国产精品99久久久久久久久 | 日韩一区二区三免费高清在线观看 | 久久香蕉国产精品麻豆粉嫩av | 欧美va天堂va视频va在线 | 久久91久久久久麻豆精品 | 亚洲v欧美v国产v在线观看 | 欧美国产高清 | 在线欧美最极品的av | 成人av日韩 | 国产精品成人久久久久久久 | 成人免费观看网址 | 午夜精品久久久久久久久久 | 国产精品白浆视频 | 丁香五月缴情综合网 | 精品国产一区二区在线 | 伊人五月在线 | 五月婷影院 | www.com.黄| 人人干网 | 婷婷亚洲五月 | 国产香蕉视频在线播放 | 国产精品久久久久婷婷二区次 | 久草国产在线观看 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 久久一视频 | 成人一区二区三区中文字幕 | 天天天天天天天天操 | 天天激情天天干 | 一级片观看 | 99久久夜色精品国产亚洲 | 国产成人久久久久 | 亚洲免费国产 | 午夜手机看片 | 国产成人性色生活片 | 国产剧情一区 | 国产一级二级三级在线观看 | 免费成人在线观看视频 | 在线91视频| 男女视频久久久 | 日韩中文在线播放 | 国产中文字幕91 | 人人干人人搞 | 久久激情精品 | 免费看十八岁美女 | 久久婷婷五月综合色丁香 | 亚洲精品国产自产拍在线观看 | 免费久久99精品国产 | 青春草视频在线播放 | 在线免费av播放 | 五月天久久狠狠 | 91麻豆精品久久久久久 | 波多野结依在线观看 | 久久特级毛片 | 欧美色综合天天久久综合精品 | 欧美日韩调教 | 久久神马影院 | 久久99国产精品自在自在app | 一二三精品视频 | 亚洲精品欧美成人 | 免费黄色网址网站 | 91色视频 | 免费在线观看av网站 | 国产高清精品在线观看 | h久久| 91免费看黄色 | 久久激情视频 | 国产亚洲一区二区三区 | 国产美女无遮挡永久免费 | 最近中文字幕免费 | 中文字幕 国产视频 | 9在线观看免费高清完整版在线观看明 | 国产999精品久久久 免费a网站 | 波多野结衣视频一区二区三区 | 欧美另类性 | 欧美日韩亚洲第一 | 精品一区中文字幕 | 少妇bbbb| 一级电影免费在线观看 | 婷婷在线免费视频 | 毛片的网址 | 超碰在线观看av | 欧美精品在线一区 | 成人午夜影院 | 在线观看网站黄 | 国产99久久久欧美黑人 | 亚洲精品永久免费视频 | 麻豆国产视频 | 免费a视频在线观看 | 日韩精品中文字幕久久臀 | 免费在线观看日韩欧美 | 免费合欢视频成人app | 一区 二区电影免费在线观看 | 国产男女爽爽爽免费视频 | 日韩一级片观看 | 香蕉在线播放 | 欧美日韩在线精品一区二区 | 国产99久久精品一区二区300 | 国产精品欧美久久 | 欧美一区二区在线 | 久久综合婷婷 | 在线观看国产一区 | 91成人小视频| 欧美日韩精品在线观看 | 韩国精品福利一区二区三区 | 日本久久免费电影 | 久久综合狠狠综合 | 欧美色综合久久 | 亚洲人人av| 国产精品免费人成网站 | 超碰人人干人人 | 日本三级在线观看中文字 | 黄色av免费 | 亚洲美女精品区人人人人 | 欧美另类高清 | 国产一级精品在线观看 | 免费在线国产精品 | 成人黄色小说在线观看 | 一级成人在线 | 日日夜夜精品免费观看 | 97成人精品 | 天天天天色射综合 | 日本午夜在线观看 | 欧美精品中文在线免费观看 | 久久亚洲成人网 | 一二区电影 | 国内一级片在线观看 | 日韩在线观看小视频 | 成年免费在线视频 | 成人黄色片免费 | 欧美精品国产综合久久 | 免费在线观看国产黄 | 麻豆一二三精选视频 | 人人添人人澡人人澡人人人爽 | 久久久久综合网 | 最近2019好看的中文字幕免费 | 麻豆小视频在线观看 | 少妇性aaaaaaaaa视频 | 在线免费观看成人 | 亚洲春色综合另类校园电影 | 天天爽天天爽天天爽 | 一区二区三区四区精品 | 狠狠色丁香久久综合网 | 久久激情电影 | 精品国产久 | 亚洲最大激情中文字幕 | 久久精品国产99 | 亚洲国产精品成人精品 | 欧美激情精品一区 | 欧美日一级片 | 极品久久久 | 操操综合网 | 国产亚洲视频中文字幕视频 | 日韩中文字幕视频在线观看 | 精品国产免费久久 | 免费国产黄线在线观看视频 | 亚洲区视频在线观看 | 国产精品久久嫩一区二区免费 | 很黄很污的视频网站 | 在线观看日韩专区 | 最新av网站在线观看 | 在线а√天堂中文官网 | 午夜视频福利 | 日韩精品一区二区三区在线播放 | 久久色中文字幕 | 在线观看视频免费播放 | 国产高清视频在线播放 | 最近的中文字幕大全免费版 | 天天操网站 | 午夜精品一区二区三区可下载 | 成人免费 在线播放 | 久久综合色天天久久综合图片 | 国产亚洲精品久久久久秋 | 久草精品视频在线看网站免费 | 欧美一级久久久久 | 91视频啪| 日本公妇在线观看高清 | 在线观看中文字幕一区 | 精品一区二区在线观看 | 欧美成年网站 | 四虎影视精品成人 | 久久久久成 | 奇米影音四色 | 成人午夜免费福利 | 亚洲黄色片 | 国产精品女人网站 | 91久久奴性调教 | 亚洲精品综合欧美二区变态 | 亚洲性xxxx | 国产xxxx做受性欧美88 | 在线观看完整版 | 午夜精品福利一区二区三区蜜桃 | 五月天.com | 在线日本看片免费人成视久网 | 美女久久久久久久 | 免费欧美精品 | 不卡中文字幕在线 | 久久婷婷开心 | 夜色成人网 | 精品国产美女 | 久久午夜色播影院免费高清 | 天天色综合天天 | 欧美日韩后 | 91探花在线视频 | www蜜桃视频| 一区二区影视 | 激情视频综合网 | 狠狠五月天 | 福利精品在线 | 久久只精品99品免费久23小说 | bayu135国产精品视频 | 亚洲精品国产精品国自产观看浪潮 | 成人综合日日夜夜 | 免费毛片一区二区三区久久久 | 亚洲精品在 | 伊人国产在线观看 | 97电影手机 | 成人亚洲精品久久久久 | 亚洲影视资源 | 日韩一区精品 | 久久爱资源网 | 国产免码va在线观看免费 | 久久久久久国产精品久久 | 午夜精选视频 | 亚洲理论在线观看 | 在线观看视频97 | 91九色免费视频 | 在线不卡中文字幕播放 | 精品久久久影院 | 午夜av在线免费 | 狠狠色丁香婷婷综合最新地址 | 中文字幕免费久久 | 高清不卡一区二区在线 | 97精品国产91久久久久久久 | 99久久精品久久亚洲精品 | 国产视频在线免费 | 91亚洲精品久久久蜜桃 | 久久久精品高清 | 国产亚洲精品久久久久5区 成人h电影在线观看 | 中文字幕在线视频第一页 | av资源免费观看 | 亚洲欧美综合精品久久成人 | 久久污视频 | 久久久久网址 | 成人久久亚洲 | 日本在线精品视频 | 色a综合 | 精品人人爽 | 亚洲干视频在线观看 | 国产精在线 | 天天综合网~永久入口 | 国产精品一区二区三区免费看 | 国产午夜精品一区 | 99人久久精品视频最新地址 | 婷婷九九 | 人人射人人插 | 国产视| 最新日韩在线 | 精品字幕| 热久久这里只有精品 | av成人在线网站 | 久久精品看片 | 天天操天天射天天舔 | 日韩视频一区二区 | 91精品久久久久久综合五月天 | 精品国产综合区久久久久久 | 日韩电影精品 | 日韩激情视频在线 | 五月天九九 | 狠狠干狠狠艹 | 午夜10000| 亚洲天堂香蕉 | 国产一级片久久 | 免费一级片视频 |