Postman 使用 WebSocket 請求

2023-04-04 10:15 更新

WebSocket 協(xié)議提供了一種通過持久連接在客戶端和服務(wù)器之間交換數(shù)據(jù)的方法。數(shù)據(jù)可以在低延遲和低開銷的情況下雙向傳遞,并且不會中斷連接。WebSockets 提供雙向、全雙工通信通道,通過單個 TCP 套接字連接在 HTTP 上運(yùn)行。這意味著服務(wù)器可以獨立地向客戶端發(fā)送數(shù)據(jù)而無需客戶端請求,反之亦然。

在 Postman 中,您可以使用服務(wù)器創(chuàng)建 WebSocket 請求,并使用它通過 WebSocket 連接發(fā)送和接收消息。

關(guān)于套接字

除了原始的 WebSocket 連接之外,Postman 還支持 Socket.IO 連接。Socket.IO 是最流行的庫之一,它支持客戶端和服務(wù)器之間的事件驅(qū)動、雙向、實時通信。它使用 WebSocket 作為其傳輸層。許多開發(fā)人員將 Socket.IO 與 HTTP API 結(jié)合使用,而 Postman 使您可以在兩種范式之間隨意切換。

創(chuàng)建 WebSocket 請求

您可以從 Postman 的側(cè)邊欄創(chuàng)建 WebSocket 請求。

  1. 選擇 新建 > WebSocket 請求以打開新選項卡。(在 Postman 桌面應(yīng)用程序中,您還可以選擇?+N或Ctrl+N。)新畫面
  2. 使用請求選項卡中的下拉列表,為原始 WebSocket 請求選擇Raw ,或為 Socket.IO 請求選擇Socket.IO 。
  3. 輸入 WebSocket 服務(wù)器 URL。WebSocket URL 以ws://或開頭wss://。WebSocket 網(wǎng)址
  4. 選擇連接。
  5. 要斷開 WebSocket 請求的連接,請選擇Disconnect。
如果您使用的是 Postman Web 應(yīng)用程序,Postman 建議使用 Postman Desktop Agent 以獲得最佳體驗。有關(guān)詳細(xì)信息,請參閱關(guān)于 Postman 代理。

發(fā)送信息

建立 WebSocket 連接后,您可以使用編輯器窗格來撰寫和發(fā)送消息。

WebSocket 消息編輯器

在編輯器的左下角,您可以選擇消息的格式:文本、JSON、XML、HTML或二進(jìn)制。如果選擇Binary,則可以選擇Base64或Hexadecimal。編輯器根據(jù)所選格式突出顯示語法。您還可以選擇{}來美化 JSON、XML 或 HTML 消息。

撰寫完消息后,選擇發(fā)送。已發(fā)送的消息將保留在窗口中,以備您更改并重新發(fā)送或保存。

保存信息

您還可以保存撰寫的消息,然后稍后重新發(fā)送。

要保存消息,請執(zhí)行以下操作:

  1. 撰寫消息(請參閱發(fā)送消息)。
  2. 選擇保存消息。
  3. 消息標(biāo)題(默認(rèn)為“新消息”)是可編輯的。輸入新標(biāo)題并按回車鍵。

要加載已保存的消息,請執(zhí)行以下操作:

  1. 打開編輯器窗格旁邊的保存的消息窗格。
  2. 選擇已保存的消息。它將加載到編輯器窗格中。
  3. 然后您可以發(fā)送消息,或?qū)ζ溥M(jìn)行編輯并選擇保存消息以保存更改。選擇放棄更改以刪除它們。

您還可以通過選擇 Compose Message從Saved Messages窗格創(chuàng)建新消息。編輯圖標(biāo)

要重命名、復(fù)制或刪除已保存的消息,請選擇更多操作圖標(biāo) 更多操作圖標(biāo) ,然后選擇重命名、復(fù)制或刪除。

添加 Socket.IO 事件名稱和參數(shù)

使用 Socket.IO 連接發(fā)送事件包括添加事件名稱和參數(shù)的能力。這使您能夠收聽特定事件。

對于 Socket.IO 連接,您可以在Send旁邊輸入要發(fā)布的事件名稱。如果您選擇發(fā)送而不輸入名稱,message將使用默認(rèn)名稱。

如果選擇確認(rèn)選項,服務(wù)器將確認(rèn)它已收到消息。

Socket.IO 事件名稱

您還可以向 Socket.IO 連接添加參數(shù)。在編輯器窗格中選擇+ Arg 。這將打開一個帶有新參數(shù)的邊欄,您可以使用它來添加參數(shù)的消息。將鼠標(biāo)懸停在現(xiàn)有參數(shù)上并選擇x將其刪除。檢查每個參數(shù)的消息的工作流程是相似的。

Socket.IO 參數(shù)

查看消息

消息窗格顯示 WebSocket 連接的消息列表,包括傳入消息、傳出消息和網(wǎng)絡(luò)消息。

消息窗格的頂部是一個連接詳細(xì)信息徽章。它顯示連接是正在連接、已連接、正在斷開還是已斷開連接。將鼠標(biāo)懸停在徽章上以顯示有關(guān)連接的詳細(xì)信息。選擇徽章旁邊的箭頭以顯示或隱藏消息。

WebSocket 消息

消息窗格具有以下控件:

  • 搜索控件 - 輸入搜索詞以顯示包含該詞的消息。選擇 關(guān)閉圖標(biāo) 結(jié)束搜索。
  • 消息類型列表 - 選擇是否要查看所有消息,或傳入或傳出消息。
  • 垃圾桶 - 選擇刪除圖標(biāo) 刪除圖標(biāo) 以清除所有消息。

每條消息顯示以下內(nèi)容:

  • 如果將鼠標(biāo)懸停在一條消息上,則會顯示一個復(fù)選框。選中兩條消息的復(fù)選框,將顯示消息之間的時間差。選擇取消選擇以刪除時間顯示。 WebSocket 時間差
  • 選擇消息旁邊的箭頭以展開或折疊它。
  • 時間顯示為您的當(dāng)?shù)貢r間。
  • 如果將鼠標(biāo)懸停在原始 Socket.IO 消息的時間上,將顯示一個信息圖標(biāo)。將鼠標(biāo)懸停在其上以獲取消息的時間、MIME 類型和大小。
  • 如果將鼠標(biāo)懸停在時間上,還會顯示一個復(fù)制圖標(biāo)。選擇此選項可將消息復(fù)制到剪貼板。

在擴(kuò)展消息中:

  • 選擇Text、HTML、JSON或XML以更改消息的格式。
  • 選擇換行以添加或刪除換行。
  • 選擇Show Hexdump或Show Message以十六進(jìn)制或文本顯示消息。
  • 使用搜索控件搜索郵件正文。
  • 將鼠標(biāo)懸停在行號上并選擇箭頭以展開或折疊消息塊。

WebSocket 消息體

Socket.IO 中的事件監(jiān)聽

在 Socket.IO 中,您可以監(jiān)聽特定事件。Messages窗格將顯示已為其添加偵聽器的已接收事件。事件將按事件進(jìn)行顏色編碼,以便于查找。

偵聽器窗格顯示偵聽器事件。要收聽新事件,請輸入事件名稱并選擇+以添加它。選擇事件旁邊的開關(guān)以打開或關(guān)閉該事件的偵聽。如果將鼠標(biāo)懸停在切換按鈕上,則可以刪除事件偵聽器。

Socket.IO 消息體

消息將指示它們是否有多個參數(shù)。當(dāng)您展開消息時,每個參數(shù)都會有選項卡。

WebSocket 消息體

在建立連接之前,您還可以在“事件”選項卡中添加事件。這使您能夠為每個事件添加描述,并選擇是否在建立連接時監(jiān)聽該事件。

在請求和消息中使用變量

您可以在 WebSocket 連接的 URL 或消息正文中使用 Postman 變量。例如,您可以創(chuàng)建一個名為 的變量my_host,將值設(shè)置為example.com然后使用 URL ws://{{my_host}}/api/example。如果您{{在 URL 字段或消息編輯器中輸入,您可以自動完成您的變量。

有關(guān)如何使用變量的更多信息,請參閱使用變量。

添加請求詳細(xì)信息

您可以向請求添加詳細(xì)信息,例如發(fā)送更多參數(shù)和標(biāo)頭。您還可以配置連接。選擇Params、Headers或Settings選項卡進(jìn)行更改。

您無法在連接時更改請求詳細(xì)信息。您必須在連接之前進(jìn)行任何更改,或選擇斷開連接以停止當(dāng)前連接。

發(fā)送參數(shù)

在參數(shù)選項卡上,添加您想要附加到 WebSocket URL 的任何參數(shù)。這類似于在 REST 請求中發(fā)送參數(shù)。

配置標(biāo)頭

在標(biāo)頭選項卡上,輸入您希望隨郵件發(fā)送的任何標(biāo)頭。這類似于在 REST 請求中配置請求標(biāo)頭。

配置請求設(shè)置

可以為您的 WebSocket 請求配置以下設(shè)置:

環(huán)境描述
客戶端版本用于連接服務(wù)器的 Socket.IO 客戶端版本。(僅限 Socket.IO)
握手路徑將捕獲的服務(wù)器端路徑。(僅限 Socket.IO)
握手請求超時握手請求在超時之前將等待多長時間,以毫秒為單位。每次重定向后都會重置。
重新連接嘗試斷開連接前重新連接嘗試的最大次數(shù)。
重連間隔重新連接嘗試之間的時間間隔(以毫秒為單位)。
最大郵件大小允許的最大消息大小,以兆字節(jié)為單位。要接收任何大小的消息,請將其設(shè)置為 0。(僅限原始 WebSocket)

保存請求

您可以將 WebSocket 請求保存到一個集合中。這使您能夠重用請求,與其他團(tuán)隊成員共享它們,并將文檔添加到請求集合中。

要保存請求,請執(zhí)行以下操作:

  1. 在請求選項卡中選擇保存。
  2. 在Save request中的Save to下,選擇一個集合,或選擇Create collection。(請注意,集合中的 WebSocket 請求存在限制。繼續(xù)閱讀以獲取更多信息。)
  3. 如果您要創(chuàng)建新集合,請輸入名稱并選擇創(chuàng)建。
  4. 選擇保存。

Postman 會在側(cè)邊欄的Collections中顯示你的收藏和保存的請求:

收藏側(cè)邊欄

由于 WebSocket 請求具有與 HTTP 請求不同的功能,因此當(dāng)它們被添加到集合中時,它會導(dǎo)致集合處于具有某些限制的 beta 狀態(tài)。

處于此狀態(tài)時,集合可以包含 WebSocket 或 gRPC 請求。它不能包含 HTTP 請求。不支持與集合相關(guān)的某些功能,例如協(xié)作、版本控制或腳本。

記錄請求

Postman 會自動為您的每個請求生成文檔。文檔包括請求的 URL、參數(shù)、設(shè)置和任何已保存的消息。您還可以添加描述以幫助用戶理解和使用該請求。

要查看和編輯 WebSocket 請求的文檔,請執(zhí)行以下操作:

  1. 打開請求。
  2. 文檔圖標(biāo) 選擇右側(cè)欄中的文檔圖標(biāo) 。
  3. 編輯圖標(biāo) 選擇描述旁邊的編輯圖標(biāo) 。
  4. 使用 Postman 的內(nèi)置編輯工具編寫您的內(nèi)容。
  5. 完成后,選擇保存以保存文檔。如果您需要進(jìn)行更改,可以再次編輯說明。
您還可以向收藏集的概覽或收藏夾中的文件夾添加描述。在邊欄中選擇收藏或文件夾,然后選擇描述  旁邊的編輯圖標(biāo)。

其他 Socket.IO 說明

Socket.IO 通常使用 WebSockets 作為其傳輸層,但有時在無法使用 WebSockets 時使用 HTTP“長輪詢”作為后備。Postman 不支持 Socket.IO 中的長輪詢模式。

WebSocket 請求故障排除

您可以使用控制臺調(diào)試 WebSocket 連接問題。要打開控制臺并查看日志消息,請 在 Postman 頁腳中選擇控制臺圖標(biāo) 控制臺。

有關(guān)使用控制臺的更多信息,請參閱故障排除請求。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號