99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

HTTP、Socket、WebSocket、WebService對(duì)比:協(xié)議分層與選型實(shí)戰(zhàn)指南

HTTP、Socket、WebSocket、WebService對(duì)比:協(xié)議分層與選型實(shí)戰(zhàn)指南 先說(shuō)個(gè)在技術(shù)群里看到無(wú)數(shù)次的問(wèn)題“我該用Socket還是WebService”——這個(gè)問(wèn)題本身問(wèn)錯(cuò)了但幾乎所有爭(zhēng)論都在為這個(gè)錯(cuò)題吵。有人甩出“Socket性能好”有人反駁“WebService跨語(yǔ)言”其實(shí)Socket是操作系統(tǒng)開(kāi)放的編程接口WebService是應(yīng)用層調(diào)用規(guī)范兩者壓根不在同一層。我決定把HTTP、Socket、WebSocket、WebService(SOAP)這四個(gè)高頻名詞放進(jìn)同一張分層圖里逐個(gè)拆協(xié)議本質(zhì)、畫(huà)對(duì)比矩陣、講選型場(chǎng)景、整理真實(shí)報(bào)錯(cuò)排查最后用幾段最短Python代碼把差異“跑”給你看。這篇內(nèi)容適合剛接觸網(wǎng)絡(luò)編程的后端新人、被實(shí)時(shí)推送繞暈的前端工程師、做嵌入式或桌面開(kāi)發(fā)要選通信方案的從業(yè)者也適合正在準(zhǔn)備網(wǎng)絡(luò)基礎(chǔ)面試的人。1. 先搞明白這四個(gè)名詞根本不在同一個(gè)層次1.1 一張“分層視圖”重新定位四者絕大多數(shù)混亂都源于缺少網(wǎng)絡(luò)分層意識(shí)。教科書(shū)版本的七層OSI模型在工程里可以簡(jiǎn)化成四段物理鏈路層負(fù)責(zé)把電信號(hào)/光信號(hào)變成比特IP層負(fù)責(zé)尋址和路由TCP/UDP傳輸層負(fù)責(zé)端到端的連接和數(shù)據(jù)可靠傳輸再往上是應(yīng)用層才是HTTP、WebSocket、WebService這些協(xié)議真正干活的地方。如果給這四個(gè)名詞定坐標(biāo)Socket不是“第四種協(xié)議”它是操作系統(tǒng)暴露給應(yīng)用開(kāi)發(fā)者的一組網(wǎng)絡(luò)編程接口可以理解成傳輸層之上、應(yīng)用層之下的“窗口”。HTTP是典型的應(yīng)用層文本協(xié)議跑在TCP之上。WebSocket表面看是獨(dú)立協(xié)議但它的握手借用了HTTP升級(jí)成功后變成一條基于TCP的全雙工幀通道。WebService(SOAP)是比HTTP更上層的架構(gòu)規(guī)范多數(shù)情況下把XML消息封裝在HTTP報(bào)文里傳輸。想象一個(gè)數(shù)據(jù)包的完整旅程你的應(yīng)用構(gòu)造了一句話應(yīng)用層數(shù)據(jù)交給Socket接口內(nèi)核里的TCP/IP棧負(fù)責(zé)加包頭、拆包、重傳、排序物理網(wǎng)卡最后把比特發(fā)出去。對(duì)面收到后逆序處理。這句“交給Socket”就是很多人忽略的一步——HTTP也罷、WebSocket也罷底層全部經(jīng)由Socket進(jìn)出。所以Socket不是競(jìng)爭(zhēng)對(duì)手而是地基。1.2 用“快遞公司”的比喻建立畫(huà)面感我經(jīng)常用快遞來(lái)類比這幾個(gè)名詞新手接受度非常高。IP地址就是全國(guó)街道門(mén)牌號(hào)負(fù)責(zé)把包裹送到正確的城市和樓棟。TCP是那個(gè)認(rèn)真負(fù)責(zé)的快遞員拆不了的箱子他會(huì)重發(fā)順序亂了他會(huì)整理保證你拿到的包裹完整無(wú)損。Socket是營(yíng)業(yè)廳窗口你作為寄件人把貨物應(yīng)用層數(shù)據(jù)遞給窗口窗口背后是快遞員。每個(gè)應(yīng)用要寄東西都得走這個(gè)窗口。HTTP是快遞單上的標(biāo)準(zhǔn)填法規(guī)定了收件人、地址、商品名怎么寫(xiě)包裹按這張單子送到后收件人就知道里面是什么怎么處理。WebSocket相當(dāng)于你和一個(gè)快遞公司簽了長(zhǎng)期駐場(chǎng)合同快遞員先按標(biāo)準(zhǔn)流程跟你建好關(guān)系HTTP握手之后天天駐在你門(mén)口你有話直接遞給他不用再填單子。WebService(SOAP)則是某家企業(yè)對(duì)外公布的標(biāo)準(zhǔn)辦事流程你必須用指定表格XML信封填申請(qǐng)走指定窗口領(lǐng)回指定格式的回執(zhí)。這個(gè)類比能解釋很多困惑快遞單必須寫(xiě)在包裹上這跟“包裹走什么營(yíng)業(yè)廳窗口”沒(méi)關(guān)系。同理HTTP是封裝在TCP之上的底層到底用哪個(gè)Socket應(yīng)用層根本不用關(guān)心。1.3 為什么總有人說(shuō)“Socket比HTTP快”這個(gè)說(shuō)法有一定事實(shí)依據(jù)但原因經(jīng)常被說(shuō)錯(cuò)。直接用Socket編程通常指的是自己創(chuàng)建TCP連接、自己定義消息格式、自己管理連接生命周期。這樣能省掉HTTP那些重復(fù)的頭部字段省掉文本解析還不用每次發(fā)完就斷開(kāi)。本質(zhì)差異在于Socket讓你支配了連接、字節(jié)流和收發(fā)節(jié)奏HTTP則把這些全部標(biāo)準(zhǔn)化了。代價(jià)就是復(fù)雜度。用HTTP你不需要處理粘包半包、不需要定義幀邊界、不需要考慮連接的Keep-Alive策略瀏覽器、網(wǎng)關(guān)、負(fù)載均衡、監(jiān)控體系全都幫你趟平了。用裸Socket一切從零開(kāi)始。所以“Socket更快”是拿“自由定制”換來(lái)的不是協(xié)議本身有魔法。2. 逐個(gè)擊破四位候選人的技術(shù)解剖2.1 HTTP那個(gè)被低估的王牌協(xié)議HTTP定義了客戶端與服務(wù)端交互的文本規(guī)則。一個(gè)請(qǐng)求由請(qǐng)求行、請(qǐng)求頭、空行、消息體組成響應(yīng)則由狀態(tài)行、響應(yīng)頭、空行、消息體組成。這套規(guī)則簡(jiǎn)單到可以用一句俗話概括我說(shuō)一句請(qǐng)求你回一句響應(yīng)。它有九種請(qǐng)求方法工程中最常用的只有GET和POST其余PUT、DELETE、PATCH、HEAD、OPTIONS各有語(yǔ)義。狀態(tài)碼也是面試高頻區(qū)2xx成功、3xx重定向、4xx客戶端錯(cuò)誤、5xx服務(wù)端錯(cuò)誤。HTTP精心設(shè)計(jì)的這部分“無(wú)狀態(tài)”特性讓分布式系統(tǒng)可以輕松做負(fù)載均衡和水平擴(kuò)展。很多人忽略了HTTP的連接演變。HTTP/1.0每次請(qǐng)求都要新建TCP連接性能堪憂HTTP/1.1引入Keep-Alive一個(gè)TCP連接上可以連續(xù)發(fā)多個(gè)請(qǐng)求HTTP/2更進(jìn)一步在一條連接上多路復(fù)用并發(fā)請(qǐng)求徹底解決了HTTP/1.1的“隊(duì)頭阻塞”問(wèn)題。日常說(shuō)的“HTTP連接復(fù)用”指的就是這個(gè)演進(jìn)過(guò)程。值得注意的是HTTP服務(wù)的默認(rèn)端口是80HTTPS是443。但端口這東西只是約定不是協(xié)議約束。你在8080、9090上跑HTTP完全沒(méi)問(wèn)題。正因?yàn)镠TTP是文本協(xié)議、可預(yù)測(cè)、可調(diào)試、可緩存它才成了Web世界的萬(wàn)王之王。REST API、WebSocket握手、SOAP消息傳輸、CDN緩存全都寄生在HTTP之上。2.2 Socket系統(tǒng)給應(yīng)用開(kāi)的“網(wǎng)絡(luò)窗口”Socket不是協(xié)議是接口。這句話值得寫(xiě)三遍。它通常由操作系統(tǒng)提供一組API最核心的是socket、bind、listen、connect、accept、send、recv、close。服務(wù)端流程大致是創(chuàng)建socket綁定端口監(jiān)聽(tīng)然后循環(huán)accept接受客戶端連接客戶端則是創(chuàng)建socket后connect到指定IP和端口建立連接后兩邊就能互相收發(fā)。TCP Socket記住一句話它提供的是字節(jié)流沒(méi)有消息邊界。這意味著你send了兩次接收方可能一次recv就把兩段數(shù)據(jù)都讀出來(lái)了這就是“粘包”也可能你send了一次對(duì)方分兩次recv才讀完這是“半包”。所以自研TCP協(xié)議必須自己約定消息布局可以用固定長(zhǎng)度頭先收4字節(jié)長(zhǎng)度再收消息體、可以用分隔符如換行符、可以用自描述字段。這個(gè)設(shè)計(jì)繞不開(kāi)只能一步一個(gè)腳印地定。UDP Socket是另一種風(fēng)格無(wú)連接、不可靠、不保證順序但延遲低、開(kāi)銷(xiāo)小。它適合音視頻流、游戲位置同步、日志上報(bào)這類可以容忍丟包的場(chǎng)景。TCP負(fù)責(zé)“一個(gè)字都不能少”UDP負(fù)責(zé)“盡量快”沒(méi)有誰(shuí)絕對(duì)強(qiáng)。還有一個(gè)高頻混淆點(diǎn)MySQL啟動(dòng)時(shí)報(bào)的Cant connect through socket /tmp/mysql.sock這里的socket是Unix Domain Socket用于同一臺(tái)機(jī)器上的進(jìn)程間本地通信走的是文件系統(tǒng)路徑不經(jīng)過(guò)網(wǎng)絡(luò)協(xié)議棧。和網(wǎng)絡(luò)編程里說(shuō)的TCP/UDP Socket完全是兩碼事只是名字都叫socket。2.3 WebSocket借HTTP的殼還你一條全雙工專線WebSocket的誕生背景很直白HTTP是半雙工的“你來(lái)我往”服務(wù)端沒(méi)法主動(dòng)找客戶端說(shuō)話。早期做聊天或?qū)崟r(shí)行情只能靠客戶端頻繁輪詢浪費(fèi)帶寬又不夠?qū)崟r(shí)。WebSocket的目標(biāo)是讓雙方在一條TCP連接上隨時(shí)互相發(fā)消息。它的建立過(guò)程很有意思。先由客戶端發(fā)起一個(gè)常規(guī)HTTP Upgrade請(qǐng)求請(qǐng)求頭里帶上Upgrade: websocket、Sec-WebSocket-Key等字段服務(wù)端核對(duì)后返回HTTP/1.1 101 Switching Protocols連接協(xié)議隨即從HTTP切換到WebSocket。本質(zhì)就是“借HTTP的殼完成握手握手之后走自己的幀協(xié)議”。一握手就輕輕松松把原理講明白了。握手之后的數(shù)據(jù)不再用HTTP文本格式而是走幀結(jié)構(gòu)。每個(gè)幀開(kāi)頭有FIN位表示是否是最后一幀OpCode字段表示幀類型文本、二進(jìn)制、關(guān)閉、Ping、Pong之后是載荷長(zhǎng)度和掩碼??蛻舳税l(fā)往服務(wù)端的幀必須加掩碼防止緩存污染服務(wù)端往客戶端發(fā)則不需要。這套設(shè)計(jì)讓二進(jìn)制傳輸更順暢頭部開(kāi)銷(xiāo)也比HTTP小非常多。WebSocket雖然叫socket但它不是那種“我直接連個(gè)TCP端口”的編程方式。它的握手必須經(jīng)過(guò)HTTP所以IP和端口上可以復(fù)用現(xiàn)有的80/443通道很容易穿過(guò)網(wǎng)關(guān)和防火墻。這也解釋了為什么做Web推廣的服務(wù)端幾乎都會(huì)配套一套WebSocket推送通道聊天、行情推送、協(xié)同編輯、游戲?qū)?zhàn)、大屏實(shí)時(shí)看板它都天然合適。2.4 WebService(SOAP)企業(yè)級(jí)“服務(wù)契約”的古老貴族WebService(SOAP)概念多實(shí)踐少但面試和跨系統(tǒng)集成時(shí)高頻出現(xiàn)。SOAPSimple Object Access Protocol本質(zhì)上是一套基于XML的消息封裝規(guī)范通常搭載在HTTP上傳輸。它的核心三件套是WSDL服務(wù)描述、SOAP消息體和XSD數(shù)據(jù)類型定義??匆环軸OAP請(qǐng)求會(huì)是這樣一種觀感soap:Envelope xmlns:soaphttp://schemas.xmlsoap.org/soap/envelope/ soap:Header auth:Token xmlns:authhttp://example.com/authabcdef123456/auth:Token /soap:Header soap:Body getOrder xmlnshttp://example.com/order orderId10086/orderId /getOrder /soap:Body /soap:EnvelopeEnvelope是信封Header是公共信息認(rèn)證、事務(wù)、路由Body是真正的業(yè)務(wù)參數(shù)。SOAP強(qiáng)調(diào)的是“調(diào)用遠(yuǎn)程方法”——你對(duì)著一個(gè)XML信封喊一聲getOrder服務(wù)端就能幫你處理。它和REST的資源式風(fēng)格有本質(zhì)區(qū)別REST把一切都抽象成“資源動(dòng)詞”SOAP則把一切都抽象成“方法參數(shù)”。為什么SOAP在銀行、電信、政務(wù)、大型ERP集成里仍然占有一席之地因?yàn)樗袕?qiáng)類型契約。WSDL描述了每個(gè)方法、參數(shù)、返回結(jié)構(gòu)任何語(yǔ)言都能根據(jù)WSDL生成客戶端代碼跨語(yǔ)言對(duì)接非常規(guī)范。再加上WS-Security安全擴(kuò)展、事務(wù)擴(kuò)展、可靠消息傳輸?shù)绕髽I(yè)級(jí)配套它天然是為“嚴(yán)監(jiān)管、重流程、強(qiáng)審計(jì)”的場(chǎng)景準(zhǔn)備的。代價(jià)是XML繁雜、調(diào)試體驗(yàn)差、性能相對(duì)低。一個(gè)容易混淆的點(diǎn)是很多人以為REST和SOAP是對(duì)立關(guān)系其實(shí)兩者都可能跑在HTTP上??梢哉f(shuō)REST是一種現(xiàn)代接口設(shè)計(jì)風(fēng)格SOAP是一種老牌消息協(xié)議?,F(xiàn)在新項(xiàng)目里新建REST接口的越來(lái)越多SOAP多出沒(méi)于老系統(tǒng)遺留接口和特定行業(yè)標(biāo)準(zhǔn)里。3. 差異對(duì)比矩陣與實(shí)際選型別再問(wèn)哪個(gè)更快3.1 一張表看清四者的關(guān)鍵差異對(duì)比維度HTTPSocket(TCP)WebSocketWebService(SOAP)網(wǎng)絡(luò)分層應(yīng)用層協(xié)議傳輸層編程接口應(yīng)用層協(xié)議依賴HTTP握手應(yīng)用層調(diào)用規(guī)范基于HTTP等連接模式短連接或Keep-Alive復(fù)用自主管理長(zhǎng)連接/短連接握手后長(zhǎng)連接多為HTTP短請(qǐng)求或Keep-Alive復(fù)用數(shù)據(jù)格式文本協(xié)議裸字節(jié)流無(wú)內(nèi)置格式幀協(xié)議文本/二進(jìn)制XML信封通信方向客戶端請(qǐng)求服務(wù)端響應(yīng)雙方向自由收發(fā)對(duì)稱雙工實(shí)時(shí)收發(fā)請(qǐng)求/響應(yīng)為主實(shí)時(shí)性依賴輪詢或其他手段高自定義能力極強(qiáng)強(qiáng)服務(wù)端可主動(dòng)推送偏低適合低頻業(yè)務(wù)交互典型端口80/443任意端口如8080通常經(jīng)80/443接入通常經(jīng)80/443接入調(diào)試難度簡(jiǎn)單瀏覽器工具直接抓相對(duì)困難要自己解剖字節(jié)流開(kāi)發(fā)者工具可看幀復(fù)雜需專用工具看XML報(bào)文典型應(yīng)用網(wǎng)頁(yè)、REST API、CDN游戲服務(wù)器、自定義IM、設(shè)備通信實(shí)時(shí)看板、聊天、行情推送金融銀行接口、企業(yè)系統(tǒng)集成這張表放一起就能立刻看出“哪個(gè)更快”是個(gè)偽命題。HTTP熟、調(diào)試方便、生態(tài)豐富Socket靈活、性能上限高、但什么都要自己造WebSocket為實(shí)時(shí)雙向而生SOAP為跨企業(yè)強(qiáng)契約而生。你要先回答“這個(gè)系統(tǒng)要解決什么問(wèn)題”再回來(lái)挑協(xié)議。3.2 五個(gè)選型填空題場(chǎng)景一給前端H5頁(yè)面做一個(gè)實(shí)時(shí)告警大屏行業(yè)數(shù)據(jù)要幾秒內(nèi)滾動(dòng)刷新。答案基本呼之欲出——WebSocket推送。HTTP輪詢?cè)诘皖l率還行高頻就浪費(fèi)資源SSE能單向上推但不需要雙向、又要走復(fù)雜交互時(shí)WebSocket更順手。場(chǎng)景二兩個(gè)內(nèi)部系統(tǒng)之間查詢訂單狀態(tài)要求簡(jiǎn)單、開(kāi)發(fā)快、別人也好維護(hù)。這種優(yōu)先REST APIHTTPJSON沒(méi)有必須用WebService的硬性要求就盡量別碰SOAP。場(chǎng)景三做一款聊天APP的消息通道要自己控制連接、心跳、斷線重連客戶端也是自研的。這種就是TCP Socket的公平競(jìng)賽場(chǎng)你可以自己定消息格式把協(xié)議頭壓縮到極致。場(chǎng)景四對(duì)接金融領(lǐng)域的老接口對(duì)方給了WSDL文檔要求走SOAP。那別掙扎入鄉(xiāng)隨俗用SOAP。WSDL本身就是契約生成的樁代碼能減輕大部分工作。場(chǎng)景五要下載幾個(gè)GB的大文件服務(wù)端還需要斷點(diǎn)續(xù)傳。用HTTP就能很好解決支持Range請(qǐng)求、超時(shí)續(xù)傳沒(méi)必要自己去拿Socket造輪子。很多裸Socket方案到最后都會(huì)發(fā)現(xiàn)自己其實(shí)是在拙劣地復(fù)刻HTTP。3.3 兩對(duì)最容易混淆的“糾纏關(guān)系”第一對(duì)糾纏HTTP和WebSocket。很多人把WebSocket當(dāng)成HTTP的“升級(jí)版”實(shí)際上它倆的關(guān)系更像是“WebSocket蹭了HTTP的過(guò)渡通道”。握手用的是HTTP報(bào)文握手之后就與HTTP無(wú)關(guān)了。所以不能說(shuō)WebSocket替代了HTTP它替代的是“HTTP被迫高頻輪詢來(lái)模擬實(shí)時(shí)推送”這種別扭用法。第二對(duì)糾纏Socket和HTTP/WebSocket。Socket既然不是協(xié)議就不存在“Socket并發(fā)HTTP”這種說(shuō)法。所有走HTTP的應(yīng)用底層都依賴Socket機(jī)制只是你根本不直接操作它。瀏覽器之所以不暴露原生Socket給網(wǎng)頁(yè)調(diào)用是因?yàn)槟菢游kU(xiǎn)且不可控瀏覽器只給你封裝好的HTTP/WebSocket等高層接口。還有一個(gè)網(wǎng)上常問(wèn)的點(diǎn)Socket有跨域問(wèn)題嗎網(wǎng)絡(luò)層面Socket沒(méi)有跨域概念服務(wù)端之間隨手連。但瀏覽器端的WebSocket跨域主要看握手響應(yīng)時(shí)服務(wù)端是否校驗(yàn)Origin頭。服務(wù)端之間通暢瀏覽器端要防跨域劫持。4. 實(shí)戰(zhàn)排坑那些年被這四個(gè)名詞坑過(guò)的報(bào)錯(cuò)4.1 高頻報(bào)錯(cuò)速查表報(bào)錯(cuò)/現(xiàn)象實(shí)際上是什么問(wèn)題排查與解決方法ERROR 2002: Cant connect to local MySQL server through socket /tmp/mysql.sockMySQL客戶端默認(rèn)嘗試通過(guò)Unix socket連接本地庫(kù)先確認(rèn)MySQL服務(wù)真的啟動(dòng)了再查socket路徑是否和my.cnf一致試試用-h 127.0.0.1強(qiáng)制走TCP連接能連上就說(shuō)明是socket路徑問(wèn)題No more data to read from socket對(duì)端已經(jīng)關(guān)閉連接或連接被網(wǎng)絡(luò)設(shè)備斷掉查服務(wù)端是否主動(dòng)關(guān)閉、連接空閑被防火墻回收、數(shù)據(jù)庫(kù)等待超時(shí)加大KeepAlive和空閑超時(shí)參數(shù)客戶端做好重連Socket read timed out讀超時(shí)服務(wù)端響應(yīng)耗時(shí)超過(guò)客戶端閾值是不是SQL慢查詢是不是下游依賴慢先看服務(wù)端監(jiān)控再適當(dāng)調(diào)大讀取超時(shí)時(shí)間但治本要優(yōu)化響應(yīng)速度WebSocket連接成功后很快斷開(kāi)或503中間網(wǎng)關(guān)/反向代理對(duì)空閑連接不友好或服務(wù)端沒(méi)處理Ping設(shè)置合理的WebSocket心跳Ping/Pong網(wǎng)關(guān)側(cè)調(diào)大proxy_read_timeout一類參數(shù)確認(rèn)是否有會(huì)話保持要求405 Method Not Allowed路由不匹配比如接口要求POST你卻發(fā)了GET看框架路由定義和實(shí)際請(qǐng)求方法檢查Nginx等接入層配置有沒(méi)有把方法改掉SOAP調(diào)用報(bào)“Could not find operation”WSDL與實(shí)際服務(wù)實(shí)現(xiàn)不匹配或SOAPAction填寫(xiě)不對(duì)用SoapUI直接加載WSDL自動(dòng)生成正確報(bào)文對(duì)比檢查SOAPAction、命名空間、參數(shù)類型bind: address already in use端口被占用用netstat -ano4.2 關(guān)于“長(zhǎng)連接”的三個(gè)常見(jiàn)誤會(huì)數(shù)據(jù)庫(kù)連接池里的連接本質(zhì)是一條TCP Socket連接但它不是WebSocket。有人看到“連接池”就以為是WebSocket完全不是。連接池的意義在于復(fù)用TCP連接以減少反復(fù)握手開(kāi)銷(xiāo)跟實(shí)時(shí)推送沒(méi)有關(guān)系。HTTP的Keep-Alive也是一種長(zhǎng)連接但它還是“客戶端一問(wèn)一答”的語(yǔ)義服務(wù)端仍不能主動(dòng)推送。很多新人以為Keep-Alive之后服務(wù)端就能隨時(shí)發(fā)消息了這是個(gè)很經(jīng)典的誤區(qū)。WebSocket的“長(zhǎng)連接”才是真正意義全雙工。但它也有自己的坑代理和負(fù)載均衡環(huán)境下如果一端長(zhǎng)時(shí)間沒(méi)有數(shù)據(jù)中間設(shè)備可能把空閑連接回收所以實(shí)際項(xiàng)目里幾乎都要做心跳維持。生產(chǎn)環(huán)境的WebSocket服務(wù)設(shè)計(jì)遠(yuǎn)比“跑通一個(gè)demo”復(fù)雜。4.3 獨(dú)家調(diào)試技巧調(diào)試WebSocket不用裝額外插件。Chrome開(kāi)發(fā)者工具里找到Network面板再切到“WS”標(biāo)簽?zāi)芸吹轿帐终?qǐng)求、每條幀的負(fù)載。命令行工具可以用wscat一條命令連上服務(wù)端反復(fù)發(fā)送數(shù)據(jù)特別適合驗(yàn)證服務(wù)端推送邏輯。調(diào)試SOAP首選SoapUI。把服務(wù)端給的WSDL地址粘貼進(jìn)去它會(huì)自動(dòng)列出所有操作、參數(shù)和請(qǐng)求示例。很多SOAP對(duì)接問(wèn)題都是因?yàn)槭止て碭ML時(shí)某個(gè)命名空間拼錯(cuò)、某個(gè)元素順序不對(duì)導(dǎo)致的SoapUI幫你把最原始的報(bào)文生成出來(lái)對(duì)照著改就行。調(diào)試TCP SocketWireshark是神。抓包時(shí)過(guò)濾tcp.port 端口號(hào)右鍵“Follow TCP Stream”能看到完整收發(fā)數(shù)據(jù)流。我見(jiàn)過(guò)很多開(kāi)發(fā)者在代碼里反復(fù)打Log定位粘包問(wèn)題其實(shí)用Wireshark立刻就能看到發(fā)送方到底發(fā)了多少字節(jié)接收方recv了幾次問(wèn)題在哪一目了然。5. 最后用最小示例把四者“看”一遍Python5.1 手寫(xiě)HTTP請(qǐng)求證明HTTP不過(guò)是文本規(guī)則用Python自帶socket庫(kù)不借助任何HTTP庫(kù)手動(dòng)發(fā)一次GETimport socket with socket.create_connection((example.com, 80), timeout5) as s: request ( GET / HTTP/1.1\r\n Host: example.com\r\n Connection: close\r\n \r\n ) s.send(request.encode()) response b while True: chunk s.recv(4096) if not chunk: break response chunk print(response.decode(errorsignore)[:500])這段代碼的意義在于你親手把HTTP請(qǐng)求行、請(qǐng)求頭發(fā)送出去并收到了響應(yīng)。這說(shuō)明HTTP就是“按特定格式組織文本行再塞進(jìn)TCP Socket”。理解了這一點(diǎn)你對(duì)HTTP的敬畏感就會(huì)轉(zhuǎn)化為掌控感。5.2 TCP echo服務(wù)端理解Socket的字節(jié)流本質(zhì)import socket import threading def handle(conn): while True: data conn.recv(1024) if not data: break conn.sendall(data) # 原樣回顯 conn.close() server socket.socket(socket.AF_INET, socket.SOCK_STREAM) server.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) server.bind((127.0.0.1, 9000)) server.listen(5) print(echo server on 9000) while True: conn, _ server.accept() threading.Thread(targethandle, args(conn,), daemonTrue).start()這里的數(shù)據(jù)收發(fā)完全是裸字節(jié)流?,F(xiàn)實(shí)中如果客戶端一次性發(fā)來(lái)多個(gè)業(yè)務(wù)消息服務(wù)端可能一次recv全部收到你必須自己定義消息格式來(lái)分界。把這段跑通之后你才能真正理解什么叫“Socket是自由但麻煩的窗口”。5.3 WebSocket推送看清升級(jí)與全雙工import asyncio import websockets async def push(ws): for i in range(5): await ws.send(f服務(wù)端推送第 {i1} 條) await asyncio.sleep(1) async def handler(ws): await push(ws) async def main(): async with websockets.serve(handler, 127.0.0.1, 9001): await asyncio.Future() asyncio.run(main())服務(wù)端啟動(dòng)后瀏覽器里用Chrome的WebSocket測(cè)試工具就能連上比如ws://127.0.0.1:9001然后觀察服務(wù)端主動(dòng)推送。這個(gè)過(guò)程直觀展示了WebSocket連接建立后服務(wù)端不需要等客戶端發(fā)消息自己就能往客戶端送數(shù)據(jù)。那種“啊原來(lái)這就叫服務(wù)端推送”的感受比讀十篇原理文章都有用。5.4 SOAP請(qǐng)求看穿XML信封import requests soap_body ?xml version1.0 encodingutf-8? soap:Envelope xmlns:soaphttp://schemas.xmlsoap.org/soap/envelope/ soap:Body getOrder xmlnshttp://example.com/order orderId10086/orderId /getOrder /soap:Body /soap:Envelope resp requests.post( https://example.com/soap/order, datasoap_body, headers{Content-Type: text/xml; charsetutf-8}, ) print(resp.text)這個(gè)例子想在你看不到真實(shí)SOAP服務(wù)的情況下給你一個(gè)直觀認(rèn)知SOAP就是預(yù)先約定好的XML結(jié)構(gòu)通過(guò)HTTP POST發(fā)過(guò)去。它的核心價(jià)值不是“跑得快”而是“格式嚴(yán)格、跨語(yǔ)言可解析”。真實(shí)項(xiàng)目里往往不手工拼XML而是用WSDL生成客戶端代碼但理解底層結(jié)構(gòu)仍然很重要。按這個(gè)順序把代碼都跑一遍你對(duì)四個(gè)概念的理解會(huì)很不一樣先寫(xiě)裸Socket再手寫(xiě)HTTP再看HTTP升級(jí)到WebSocket最后套上SOAP信封。我個(gè)人的學(xué)習(xí)路徑就是這樣踩過(guò)亂用名詞的坑然后用抓包和代碼把概念釘死。這套思路你也可以直接復(fù)制網(wǎng)上資料再多都不如自己親手發(fā)一條報(bào)文來(lái)得踏實(shí)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
中文在线视频久1| 99热在线中文字幕| 99热综合在线观看| 99九九中文字幕视频| 国产精品成av人在线视午夜片| 开心五月婷婷婷美女| 亚洲激情另类| 另类色网| 亚洲美女网Va| 1024亚洲| 人妻久久久久久久| 79色色免费| 99国产精品白浆在线观看免费| 超碰亚洲欧美| 热99精品视频| 色哟哟性爱av| 色约约视频一区二区三区四区五区 | 久狠狠| 超碰人人在线观看| 婷婷五月丁香啪啪| 五月婷久久久| 五月天精品| 亚洲第一色色色色| 色99视| 五月婷婷丁香大陆免费| 婷婷五月天AV激情| 97色啪| 婷婷久久综合久| 热久久77777| 97在线观视频免费观看| 日韩av在线免费观看| 狠狠大香婷婷爱| 婷婷五月天伊人| 日本丁香五月| 97色在线视频| 国产午夜精品一区二区三区嫩草| 夜夜爱网站| 亚洲成人AV在线播放| 婷婷久久亚洲| 五月婷婷丁香狠狠撸久久| 曰本aaaaaa丈片| 日韩成人网址| 久9无码视频| 五月丁香啪啪啪啪| 91色噜噜狠狠狠狠色综合| 亚洲啪啪视频| 丁香五月首页| 天天操综合网| 九九热这里只有精品一| 丁香五月激情综合啪啪| 国产99精品免费视频| 亚洲视频二区| 九九偷拍网| 婷婷激情六月| 婷婷丁香在线| 久久天堂网| 婷婷情色五月天| 久热伊人在91| 九九九干精品| 热热99爱爱| 婷婷亚州综合| 操逼五月婷婷| 亚洲乱码日产精品BD| 99ri在线视频| 99久久6| cc精品国产性传播| 色五月天视频| 天天干、天天日日| 五月丁香婷婷人体| 丁香五月激情六月| 森林影视大全,最好看的2019年视频 | 日本性视频| 伊人丁香五月天丁香在线婷| 色天堂A| 玖玖五月丁香| 深爱激情综合网| 日日操夜夜骑| 殴美日韩成人| 色爽九九| 亚洲妇女熟BBW| 青青草伊人婷婷| 色婷丁香91| 五月天婷婷基地| 国产伦亲子伦亲子视频观看| 激情碰碰碰| 少妇搡BBBB搡BBB搡毛茸茸| 色99日韩| 五月综合人妻| 99视频精品| 秋霞AV美国| 内射综合网| 五月丁香综合激情在线观看| 99热这里只有精品98| 五月欧美色色五月| av九九| 91九色中文| 色综合爱综合| 婷婷丁香亚洲五月天| 久久性爰视频这里只有精品| 五月综合色| 人妻熟人中文字幕一区二区| 亚洲视频综合网| 亚洲操B视频| 欧美婷婷丁香五月| 五月伊人视频在线看| 99视频精品在线| 天天狠天天叉| 91人人操人人看| 天天爽成人综合网站| 六月丁香婷| 色婷婷综合久久久久| 五月天成人在线精品| 色99在线观看| 五月婷婷六月激情| 六月婷婷狠狠| 天天综合社区| 琪琪色五月天| 中文字幕丰满乱孑伦无码专区 | 丁香 亚洲 久久| 能看的AV| 成人视频一区| 一本伊人色婷| 97操碰碰无码视频| 人妻AV中文系列| 日本天堂免费99| 最新午夜理论片| 五月丁香啪啪综合| 热99.com婷婷| 天天色天天搡| av在线资源| 91re色综合视频| 婷婷五月网图片区| 五月天成人免费视频| 大香蕉99| 五月天操逼网| 午夜国产精品AV在线播放| 婷婷色色五月天| 99精品综合视频| 91丨九色熟女丨首页| 婷婷五月电影| 九热免费视频| av在线中文| 久久开心五月天激情| 国产精品美女久久久久AV超清| 精品成人久久久久久久_一二三四视| 五月天五月色婷婷综合| 色五月激情网| 狠狠草婷婷| 久久综合五月天| 秋霞AV吧| 另类综合婷婷五月天欧美视频| 香蕉久久av一区二区三区| 玖玖在线视频福利| 五月色婷婷影院| 狠狠色狠狠色综合日日91| 97色五月天| 欧美色婷婷| 色五月天激情| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 亚洲国产精品VA在线看黑人| 亚洲爱婷婷| 五月天婷婷丁香社区| 欧美叉叉叉BBB网站| 久婷婷五月丁香在线观看| 99在线69| 5月婷婷视频网站综合| 四色五月婷婷| 国产精品色色色色| 色五月天丁香婷婷色| 日本狠狠网| 热热99爱爱| 97五月天| 久久久久97| 亚洲一个色| 激情综合网五月天| 99在线观看视频免费| 六月婷婷八月丁香| 丁香婷婷五月天亚洲| 男人天堂99| 九九这里是免费的视频5| 97操操操| 人人操人av| 久久久久视剧HD| www.minyis.com【JT】实力收量可预付QQ2101460746 | 最近中文字幕大全免费版在线 | 性天天中文网| 色综合久久888| 国产日比| 99热这里只有精品55| 欧美天天五月丁香免费观看| 超碰在线资源| www婷婷| 天天免费成年人视频| 在线一起草av| 开心婷婷五月| 国产三级秋霞| 91丨九色|PRNY熟妇| 婷婷性爱网| 久久婷婷成人综合色怡春院| 五月天停停成人网| 操婷婷基地| 丁香五月天天高清在线| 天天射影| 久久亚洲天堂| 人妻熟女一区二区AV| 欧美一级操逼视频| 5月婷婷激情6月| 色蜜婷婷| 婷婷五月丁香成人网| 手机旧版看人妻1025| 天天综合久久| 九九热大香蕉| 五月天大香焦| 97福利视频| 96人人操人人操人人| 婷五月天| 五月婷婷综合在线亚洲视频| 九九热只有精品| 色色色国产| 五月婷婷五月天| 婷婷中文字幕欧美| 色五月婷婷av| 五月天天视频| 99九九中文字幕视频| 超碰九色| 久久只有18视频| 婷婷五月另类网站| 久久精品视频9| 久久婷婷五月天| 狠狠爱丁香婷| 婷婷成人av| 99久久婷婷国产综合精品草原| 这里有精品| www,五月丁,com| 久久久婷| 91九色视频| www天堂99| 天天干,夜夜爽| 五月情四婷婷| 日本综合久久| 香蕉婷婷| 久久五月丁香| 狠狠色狠狠色综合日日91| 夜夜穞天天穞狠狠穞AV美女按摩| 天天操婷婷| 99精品久久久久| 日本色色视频| 色婷婷五月天激情在线观看| 婷婷播5月| 久久这里只有精品无码| 99视频精品8| site:jszngf.com| 久草 天堂| 熟女91九色| 婷婷丁香六月天| 五月婷婷成人| 任你爽精品免费视频6| 欧美天堂久久| 色综合久久综合中文综合网| 婷婷天堂综合| 色婷婷久久综合久色| 另类图片天天影视在线观看| 热中文字幕| 二色av| 激情五月天色网站| 婷婷欧美色| 丁香五月综合高清在线| 激情五月天激情网| 五月丁香激情综合六月涩涩爱| 婷婷丁香色五月天久久88| 五月婷婷新网站| 激情色播| 啪啪激情网站| 日本在线va| 思思99热| 日韩啊啊啊| 狠狠色婷婷777| 国产成人精品一区二三区熟女在线| 99热这里只有精品5| 丁香六月色婷婷| 久久精彩免费视频| 五月婷丁香| 久久性爱视频| 天天日日| 婷婷五月天综合网| 美女100%露全身无挡网站| 久久九九免费大视频| 久久这里只有精品视频26| 欧美人人草| 第四色五月婷婷| 综合色99| 狠狠爱综合| 99色热| 香蕉AV福利精品导航| 天天色中文字幕女优AV| 玖玖婷婷五月| 99热偷拍| 亚洲婷婷成人五月天| 天天操天天干天天日| 超碰在线人人| 色婷婷精| 99热久久这里只有精品| 开心婷婷丁香五月| 天天做天天爱| 手机在线日韩视频中文字幕| 草AV9999| 中文字幕在线观看视频www| 日韩成人无码| 日本色道视频网站| 五月天开心激情综合网| 另类 在线| 噜噜噜久久| www色色com| 狠狠爱成人综合网| 五月丁香婷婷福利| 天堂综合久久 | 激情丁香久久久久久| 色色色999| 久色网五月| 9色在线视频| 在线观看免费人成视频无码| 香蕉婷婷| 丁香五月天黄色片| 国产操逼网站| 五月婷AV| 天堂无码人妻精品AV一区| 亚洲精品网址| 五月天精品综合在线| 九色PORNY自拍成人精彩视频| 婷婷丁香社区| 五月6香色婷婷视频| 五月丁香激情婷婷| 青青草青青草五月天| 综合久| 色深爱五月| 激情综合五月婷婷| 婷婷色婷婷亚洲成人| 狠狠爱五月婷婷| 丁香五月天激情综合网| 五月天色色色| 99在线视频资源| 色五月丁香六月婷婷| 婷婷导航| www.粉嫩av.com| 女人被男人吃奶到高潮| 97艹| 天天骑天天操| 日本久久9| 色五月婷婷丁香婷婷| 97人人射| 99久视频| 色色激情| 国产五月丁香在线| 少妇AB又爽又紧无码网站| 色狠狠综合| 欧美精品啪啪| 日本精品99| 操逼六区| 五月丁香福利| 亚洲另类电影| 精品久久99| 色情久久久| 五月丁香在线观看99| 激情综合色播| 成人网页在线观看| 久久精品9| 五月综合丁香婷婷| 色色网站| 国产五月天激情小说| 中文字幕成人| 好大好粗嗯啊-一级黄色大片免费观看-成人AV | 26uuuuuuuu国产| 国产成人精品一区二三区熟女在线| 亚洲综合字幕色色| 激情五月婷婷中文字幕| 97涩婷婷婷婷基地| 99精品在线观看| 激情综合99| 六月丁香基地| 日韩AV无码影片| 五月婷在线| 日本婷婷| 五月丁香五月天现场视频| 色五月综合网站| 五月婷婷六月丁香综合| 国产在线黄色| 香蕉久久国产AV一区二区| 日日色五月天| 九月婷婷在线观看| 国产超碰在线| 五月丁香欧美综合免费视频| 99er热精品视频| 综合色五月天| 婷婷丁香五月天小说| 五月婷婷综合成人| 日本婷久久| 亚洲五月天第一综合干| 91VIP在线观看| 国产.亚洲.欧洲视频在线| 天天开心婷婷丁香五月| 亚洲欧美国产A片免费观看| 中文久久婷婷| 色插综合网| 色色色综合网| 婷婷激情五月天在线| 亚洲操B视频| 丁香五月婷婷六月| www.五月天社区| 激情综合色图| 色色婷婷综合| 久久怕怕视频| 婷婷五月天中文字幕| 91精品婷婷国产综合久久| 最近中文字幕在线中文视频| 九九热精品视频在线观看| 99精品久久| 色五月,com| 性生活视频98791| 伊人青草成人| 丁香激情网| 人妻无码视频网| WWW.桔色成人.COM| 丁香五月综合网亚洲综合欧美狠狠 | 丁香激情网| 丁香婷婷激情综合五月激情 | 色爱终和网| 婷婷激情九月| 亚洲综合欧美色丁香婷婷888月图片| 久久久免费精彩视频| 婷婷丁香色情五月天| 久久综合九九| 超碰在线99热| 色护士综合| 无码激情AAAAA片-区区| www色五月| www99热| 色婷婷丁香五月天在线视频| 欧美色图45678| 五月婷婷久久爱| 五月婷婷综合网| 婷婷丁香五月婷婷| 日韩在线五月天婷婷| 这里只精品| 丁香五月激情网| 67194线路二在线观看| 五月天婷婷在线观看| 久久免片| 97好吊操| 伊人丁香花综合影院| 丁香五月天婷婷在线视频| 综合网色综合| 久久五月婷综合网| 五月天激情黄色网址| 久久精品99国产精品日本| 噜噜五月天综合| 精品人妻久久久久久| 开心五月婷婷在线视频免费观看| 天天摸,天天爽| 中文字幕成人| 这里只有精品视频222| 五月久久婷婷天堂视频| av无码电影| 美女91一起草| 九九av在线| 国产免费av网站| 思思国产99| 激情五月婷婷综合视频| 激情WWW| 开心亚洲久久开心| 九九亚洲小视频| 天天干天天日天天插| 婷婷欧美激情综合| 深夜婷婷五月丁香| 天天天天做夜夜夜夜做| 思思re99视频在线观看| 丁香五月婷婷AV在线| www.99热这里精品| 六月婷婷激情图片| 婷婷爱五月| 丁香九月婷婷| 婷婷丁香五月天综合在线日韩| 免费看欧美成人A片无码| 国产精品久久久久久久久久| 色天使久久综合| 丁香九色不卡aaa | 99re久久| 久草热久草在线视频| 无码免费人妻A片AAA毛片西瓜| 成人美女网| 亚洲成AV人片在线观看| 五月婷婷精品| 国产高潮A片羞羞视频涩涩| 无码少妇高潮喷水A片免费| 久久se 综合网 | 97久久久久| 天天插天天玩天天干| 五月天六月丁香| 丁香五月婷婷激情123| 涩婷婷五月天| 高清视频一区| 高潮毛片又色又爽免费| 亚洲成人无码片| 婷婷五月综激情| 五月天亚洲图片婷婷| 欧洲亚洲欧洲99久久| 丁香五月天色婷婷| 九色视频91| 人操综合| 99精品自拍| 五月综合婷婷网| 婷婷五月天高清无码| 成人在线视频网| 亚洲日韩一页精品发布| 日本人人干| 天天日夜夜B久久| 婷婷丁香人妻天天久久| 思思热视频在线| 五月九九综合| 激情五月天啪啪视频| 五月激情久久综合网| 色综合网址| 99热热热99精品丁香| 久久思思热| 五月色丁香婷婷综合| 久久婷婷五月综合| 另类激情首页| 一二线视频 另类| 任你擦免费视频| 日韩欧美四五区| 久久久99免费视频| 色综合五月| 欧美天天爽| 色五月婷婷五月| 99精品国产在热久久| 婷婷色在线视频| w婷婷五月婷婷w| 午夜免费试看| 亚洲综合另类| 91色情播放| 狠狠操狠狠爱| 日韩成人av在线| 色婷婷成人五月| 天堂无码人妻精品AV一区| 综合久久五月天| 五月丁香另类网| 婷婷丁香成人| 久热婷婷| 99热国产| 日本99在线视频| 日韩在线五月天婷婷| 国产SUV精品一区二区6| 免费视频舔| 成人五月天丁香婷| 激情图片99| www.深爱激情| 激情五月婷婷色色| 久久人妻视步| 午夜成人av在线| 丁香婷婷六月激情综合| AA片在线观看视频在线播放| 思思视频精品| 无码色| www,五月天com| 人妻人人操| 久久五月天色婷婷| 大香蕉综合在线| 99黄色在线视频精品熟女| 天天色天天日| 丁香五月AV| 久色激情| 91色九| 99热碰碰热| 婷婷无码视频| 五月丁香在线| 色婷婷婷综合五月天| 思思99热| 蜜乳A√| 91人久| 激情二色月| 懂色av粉嫩av蜜臀av| 99色 色| 婷婷激情五月天桃花网| 五月丁香在线| 思思99热热热99| www.婷婷| 丁香五月天激情网| 91在线观看www| 九九在线精点品| 黄久久久| 国产精品美女| 激情婷婷五月色| 高清a片基地| 激情亚洲网| 色婷婷在线影院| 97人人操在线| 欧美婷婷五月激情| 色444综合网| 97色欧美| 色婷婷4| 91狼友视频在线观看| 色色色色色色网站| 五月丁香| 国内自拍97在线| 可以看的av网站| 91综合国免费久入| av中文字幕免费观看| 99热免| 99色综合网| 五月色情| 五月婷婷丁香大陆免费| 日韩中出视频| 色色色干| 五月丁香六月婷婷网站| 亚洲av成人在线| 国产精品久久久久久久久久免费| 欧美xx激情视频在线观看| 色停停香蕉视频| 青草青草视频2免费观看| 天天操电影院色狼性av| 久久久中文| 热99色| 婷婷色在线观看| 久久这里有精品99| 久久三级视频| 欲求不满的人妻| 人人干av| 久久这里有精品| 天天成人综合| 久久总和99| 99超超碰| 狠狠狠狠狠狠| 五月天婷婷色色网| 可以免费看AV网站| 丁香五月综合久久八| 热996精品在线观看| 99无码| 五月天婷婷社区| 天天色五月| 婷婷99中文字幕| 日韩精品一曲二曲三曲四曲五曲| 久久激情视频| 免费婷婷| 热99在线| 亚洲 六月 综合| 丁香五月天色综合| 久久婷婷精品| www.henhenl| 91av色色乱视频| AA片在线观看视频在线播放| 五月婷婷综合激情| 激情婷婷久久| 久久五月天综合| av网站中文| 激情综合网,婷婷| 亚洲人妻av| 久久婷网| 九九热在线99| 天天干天天操天天射 | 婷婷综合在线| 91ncm视频| 五月婷婷黄色毛片| 狠狠色婷婷丁香五月| 五月婷婷色欲| ..真实国产乱子伦毛片| 少妇大叫太大太粗太爽了A片| 五月婷婷香| 91丨九色丨熟女|新版| 99re6久热只有精品6在线直播| 五月天狠狠干| 五月婷婷狠狠干| 初夜av| 欧在线一区| 超碰99热精品在线| 色操综合| 男人的天堂99| 久久精彩视频99| 久热视频97AV在线观看| 另类亚洲电影| WWW.久久99| 亚洲最大视频网站| 婷婷黄色五月| 丁香婷婷色情| 成人国产综合| 婷婷五月成年人| 九九热再线九九视频免费在线观看| 丁香六月综合激情| 99久热这里有精品| 色婷婷香蕉丁丁网| 色色色.COM| 永久精品| 99久在线视频| 99热精品在线| 久久艹 五月天| 99五丁香月| 94干大香蕉| 91超碰在线播放| 99在线观看亚洲| 欧美激情xxxXX| 99热只有这里才是精品| 婷婷六月色开| caop在线视频| 九月丁香婷婷| 五月婷婷综合色啪首页| 国产精品视频| 99热精在线九九久久保| 一本伊人色婷| 五月婷啪啪| 五月色网| 潮汕成人AV片在线| 国产精品久久久久久久久久 | 午夜婷婷久久| 99视频超级精品| 亚洲99在线视频| 婷婷久久精品| 日本熟妇乱妇熟色A片蜜桃| 超碰自拍天堂| 久久人人看| www.26uuu.com亚洲电影| 99久超碰| 欧美槡BBBB槡BBB少妇| 色99婷婷五月天| 国产日产成人亚洲欧美国产VA| 丁香五月激情视频在线| 婷婷五月大香蕉| 精品亚洲国产成人A片在线鸭王| 欲色人妻| 日日夜夜狠狠婷婷色| 久色欧美| 五月天偷拍| 香蕉伊人综合| 日韩六六久久电影| 亚洲区视频| 99热超碰人| 色色婷婷丁香| 激情图片五月天| 国产精品99久久久久久久女警| 激情婷婷视频在线| 五月婷婷播| 激情九九六月激情免费视频| 91|疯狂丨高潮丨对白| 婷婷射图五月天| 丁香五月在线观看完整版| 色综合综合色| 婷婷五月天首页激情| 丁香婷婷综合精品六月初| 中文av网| 五月丁香婷婷狠狠操| 亚洲中文丁香| 九九五月天| 变天就操逼婷婷五月| 婷婷六月色丁香视频在线观看| 丁香五月开心亚洲| 丁香五月天激情四射网络不好| 久久久久久久综合狠狠综合| 人人97碰| 久xxxx| 丁香婷婷在线| 狠狠精品干练久久久无码中文字幕| 26uuu精品一区二区| 婷婷五月亚洲一本在线丁香| 日本黄色一级| a69在线视频| 天天操天天曰| 久久五月网| 先锋资源婷婷| 99偷拍视频在线日本| 婷婷精品综合| 大香蕉AV电影在线| 99这里只有精品在线| 1000部毛片A片免费观看| 免费黄色视频网址| 九九精品99| 91精品久久久久久久久久久久| 狠狠xx| 亚洲永远av在线播放| 丁香激激情网| 五月丁小婷婷激情四射| 色色日韩无码| 五月婷婷伊| 久色国产| 亚洲123区高清入口| 婷婷综合五月色播| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 男人的天堂av俄罗斯热| 丁香色综合| 婷婷九月丁香中文| 婷婷五月视屏| 99久久.www| 天天日夜夜爽| 香蕉婷婷色五月| 色五月五月婷婷| 婷婷的99视频网站| 99热九九热| 婷婷六月丁香开心深深爱| 这里只有精彩视频| 在线VA视频| 精品成人在线| 久草热视频在线观看| 99玖玖人人| 色色五月天网站| 久久曰曰| 99re6在线视频精品免费| 六月丁香婷婷色69| 色综合久久8| www.夜夜操| 國語久久婷| 久青草影院| 丁香五月综合图片在线观看| 五月婷婷很很色| 成人色五婷婷| www.色99| 国产做爰视频免费播放| 99热在线观看精品| 超碰免费成人| 欧美叉叉叉BBB网站| 婷婷五月综合免费在线| 色噜噜狠狠色综无码久久合欧美| 激情久久久| 丰满少妇猛烈A片免费看观看 | 九九碰九九爱97| 国色天香成人网| 99色在线观看| 怡春院久操| 欧美人与性动交CCOO| 婷婷五月天干干| 人人操插| 超碰狠狠干99| 精品爆操| 五月丁香综合伦理片| 欧美成综合在线观看| 99久在线精品| 婷婷五月丁香伊人网| 97日本在线| 丁香九月色| 91久久人人操| 秋霞性爱AV| 99精品网站| 色婷另类| 五月综合激情久久| 成人精品在线观看| 五月深爱激情网| 99热老网站| 懂色av粉嫩AV蜜臀AV| 激情综合亚洲| 人妻自慰高清合集| 五月丁香亚洲校园欧美| 91jiuseshunv| 激情婷婷五月天| 久人操| 激情五月天之五月婷婷| 91久久九久久九久久九久久九久久| 激情五月婷婷伊人| 91丨九色丨熟女|新版| 亚洲成人日韩无码精品| 九九热在线精品视频| 操人妻视频91| www.91有码.com| 久久激情网| 中文网婷婷字幕婷| 亚洲欧美在线观看| 99超级碰免费视频| 婷五月天| 国产另类综合| 天天日综合网射| 婷婷五月天堂| 日本专区久久| www.玖玖九| 日本欧美成人片AAAA| 日日天天干| 亚洲激情另类| 丁香五月天天高清在线| 婷婷玉月丁香五月在线视频| 五月丁香六月婷| av无码电影| 国产精品成人网站| 五月天丁香久久综合| 99热免费| 婷婷色综合| 色色色色色色色色网站| 丁香婷婷九月| 丁香婷婷色情| 丁香五月婷婷五月天| 五月成人综合| 狠狠五月天婷婷激情网。| www.激情五月天.com| 婷婷色色五月天| 丁香六月婷婷综合| 99久在线| 五月天激情影院| 成人婷婷| 久久久性爱网| 婷婷久久性爱| 碰97久久| 五月婷六月| 成人一级片| 99在线观看精品| 玖玖在线| 日本三级日本三级三级人妇四虎| 丁香五月777| 色婷婷激情| 97在线/亚洲| 久热 91| 欧亚成人A片一区二区| 欧美日韩99| 日本狠狠干| 亚洲亚洲人成综合网络| 亚洲愉拍99热成人精品| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 婷婷五月色| 性爱久久| 丁香婷婷成年| 热婷婷av| 久一网站| 六月婷婷色综合| 九九99精品视频在线观看| 热九九在线| 狠狠干2007| 九九热精品视频九九| 天天爱天天做天天操| 免费AV在线| 激情婷婷六月天| 五月丁香影视| 91日在线视频| 日韩在线一级| 五月丁香影院| 五月青青草综合| 婷婷色成人| 国产精品色婷婷久久久精品| 色九月婷婷| 日韩免费视频| 色五月大香蕉婷婷| www.狠狠| 久久婷婷操| 狠狠色噜噜狠狠狠888| 九九免费视频| 九色综合网| 婷婷五月丁香香蕉| 他改变了拜占庭| 婷婷五月噜噜| 久久性操| 亚洲春色奇米影视| 97五月久久丁香婷婷| 丁香五月香蕉在线| 五月婷六月天| 92久久| 国产午夜精品一区二区三区嫩草| 色婷婷香蕉丁丁网| 色婷婷五月天亚洲| 色五月丁香伊人五月| 亚洲精品视频在线播放| 婷婷五月丁香基| 久久久.COM| 颜射 精品性爱av| 色播五月综合网| 精品99只有。| 亚洲色久| 欧美性爱专区| 五月天激情国产综合婷婷婷就去爱| 色青五月天| 婷婷六月啪啪| 色五月噜噜| 播五月婷婷开心| www.天天干| 国产成人精品一区二三区熟女在线| 亚洲黄3级片网站欧美| 丁香五月宝贝激情网| 久9视频| 日日夜夜亚洲一区| 另类图片激情五月天| 97碰超级人人看| 天天日P天天射P| 99热精品在线播放观看| 9久热在线视频精品| 色五月天 丁香| 综合亚洲五月天| 五月天婷婷伊人| 97色碰碰公开视频| 日韩激情婷婷五月天| 超碰91人人操| 中文字幕婷婷在线| 丁香五月天无码| 久久伊人大香蕉| 另类激情五月| 婷香五月激情视频| 色婷婷五月综合激情中文字幕| 人妻狠狠操| 91九色国产熟女| 97操碰日本女人| 另类国产综合| 亚洲成人在线播放| 久久五月视频| www久久艹| 激情久久网| 日韩在线五月天婷婷| 激情综合网激情五月婷婷| 79亚洲精品少妇| 久久六月综合| 99久久久久| 91碰在线| 亚洲在线资源| 色婷婷免费观看| 97色97干| 1区2区视频| 色色婷婷丁香五月天| 丁香狠狠色婷婷久久无码视频| 欧州婷婷五月天综合| 人人干人人操人人摸人人做| 99精品视频在线观看| 色五月婷婷五月丁香五月激情五月视频| 午夜丁香| 99,色| 亚洲色五月天| 天天搞夜夜爽夜夜爽| 99热九九热| 99,色| 五月丁香六月| 538在线| 综合激情婷婷| 亚洲婷婷开心五月| 影音先锋男人女人| 一级A片天天操夜夜操| 99视频在线9| 开心五月深爱激情| 亲子乱av一区二区三区的| 久久ab| 日本WWW九九九| 狠狠丁香| 久久久久婷婷| 日韩无码专区| 色。 日日日| 五月丁香六月激情网站| 亚洲第一精品网站| 超碰人人91| 成人看片网站| 久久国产性爱A V| 九九丁香社区欧美激情| 99操逼| h亚洲| 国产午夜一区二区三区| 日日夜夜青青草| 久久久全国免费视频| 超碰在线观看9| 99日韩| 免費亭亭成人| 婷婷五月日本| 激情五月天啪啪| 五月婷婷丁香啪啪| 91麻豆国产三级精品福利在线观看| 老司机日日夜夜青草| 欧美三级黄色片久久| 99精品综合| 这里只有九九精品| 丁香五月婷婷亚洲另类| 综合五月婷婷| 色播丁香婷婷五月激情| 五月婷婷草| 天天天天操| 伊人婷婷五月天av| 99re热99| 少妇人妻丰满做爰XXX| 激情色色色| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 超碰妻人人| 九九亚洲综合| 无码人妻一区二区三区四区| 久久精品五月| 色婷五月| 五月色色激情网| 久久只有精| 97人人操人人拍| 五月丁香啪啪网| 天天久久综合| 亚洲婷婷91丁香| 日逼影音先锋男人AV资源站| 91成人看片| 99色播| 大香蕉婷婷五月天| 九九婷婷激情综合网| 91在线日| 亚洲色无码| 99婷婷五月天| 六月激情丁香一道本7777| 99无码精品| 天堂网啪啪| 丁香五月激情视频在线| 色亚洲无码| 日本黄色精品| 中文字幕按摩做爰| 伊久久婷婷| VfJxEwPH| 色五月久久成人婷婷| 日韩色五月| 亚洲a片免费观看| 九九色精品| 国产精品日日躁夜夜躁| 思思久热6| 五月刺激丁香月综合| 婷婷综合五月天| 天天爱天天爽| 五月丁香花婷婷玉莉AV| 狠狠色丁香综合| 99人人干人人| 九97免费视频| 国产真实乱对白精彩| 婷婷狠狠操| 九九99热| 夜夜干天天干| 99aese| 97丁香花五月天激情小说| 玖玖爱综合网| 九九www| 996re热精品视频| 精品二区| 五月天开心网| 色噜噜狠狠一区二区三区| 久操福利| 国产精品国产| 激情五月综合| www色五月| 五月天五月天激情网| www.十八禁不禁AV.com| 色久婷婷网| 成人色五月天婷婷| 91操片| 五月天丁香成人| 99爱爱网| 99人人精品| 9久9久| 九月色婷婷综合| 99久久.www| 亚洲综合成人网站| 青青草原爱爱网| 久久99免费视屏| 97性高潮久久久| 国产中文字幕在线视频免费观看 | 久久久人妻| 五月天狠狠色| 日本一级特黄大片AAAAA级| 在线视频激情网站| 青青草轻轻操| 黄色三级日本| 开心深爱激情网| 婷婷丁香六月| 99国产精品白浆在线观看免费| 蜜桃人妻无码AV天堂三区| 亚洲色五月| 怎么样可以看免费的一级av| 五月丁香色停停啪啪啪| Av在线资源| 操久久精| 婷久久| 婷婷五月丁香五月| 国产日批视频| 色婷婷五月天激情综合| www.夜夜騎夜夜狠| 久 久9 9 热 视 频| 婷婷五月天无码| 五月婷婷色影院| 天天干天天拍| 202丰满熟女妇大| 色香蕉婷婷| 欧美日韩中国| 色丁香婷婷| WWW·天天操·视频?| 五月丁香婷婷激情| 五月丁香婷爱在线| 99热这里只有精品最新地址获取| 女人天堂AV| 免费无码毛片一区二区A片| 色婷婷精| 国产成人高清| 婷婷五月天视| 天天爽夜夜爽夜爽精品| 婷婷亚洲五月| 99re思思热久久| 亚洲国产精品VA在线看黑人| 97se在线视频| 激情综合亚洲| 色噜综| 丁香六月婷婷| 色色色色网| 六月五月天婷婷涩播在线| 国产色99| 99在线观看视频免费| www夜夜操wwwcon| 色女人久久| 26uuu欧美| A1片久久| 婷婷免费精品视频| 日本社区五月天激情| 亚洲九区| 日本色色色色色色色色一色二色| 99久久五月丁香野外| 99热这是里只有精品| 九九热在线视频观看| 色婷五月天| 99资源人人| 蜜臀A∨在线水帘洞| 日日色综合| 天天日天天舔| 超爽内射| 性 色 婷婷| 色综合中文| 五月停视频天堂| 五月婷婷无码| 中文在线视频久1| 亚洲色综合| 99热色婷婷| 颜射 精品性爱av| caop在线视频| 六月婷婷日| 激情影院内射| www.久久爱.com| 中文AV网站| 99国产er热视频| 九九热re99re6在线精品| 99热有精品在线观看| 天天肏屄夜夜爽| 天天操夜夜操| 色欲色欲久久宗合网| 99re热精品在线视频| 婷婷五月天狠狠色| 色和综合网| 99热99ai| 五月色色网| 色射7856五月天激情四射| 精品无码人妻一区| 色综合99| 久草a片| 另类小说激情五月天| 任你躁XXXXX麻豆精品| 免费九九热| 日亚二欧美| 99ri视频在线观看| 五月丁香激情婷婷综合| 1000部毛片A片免费观看| 五月婷婷另类| 婷婷六月激情| 色色色色色五月| 丁香美女主播视频在线观看 | sisi热国产| 色欧洲| 91超碰人人操| 欧美 日韩 成人在线| 色吊丝永久访问网址 | 久热九九| 五月天综合久久丁香91| www.com五月天| 九九色网| 婷婷五月天免费视频在线观看| 国精产品一区一区三区免费视频| 99惹| 八戒青柠影视剧在线观看| 婷婷丁香视频在线观看免费| 色九月婷婷| 婷婷五月天成人| 99热精品在这里| 亚洲操人| 久久性爱视频网站| 噜噜噜噜噜在线| 99热官网| 五月情四婷婷| www.色五月| 九九综合久久| 99操不停| 另类视频五月天|