W3Cschool
恭喜您成為首批注冊用戶
獲得88經驗值獎勵
gRPC 是一個模式驅動的框架。這意味著客戶端和服務器在調用和執(zhí)行請求時必須遵守標準協議(架構)。服務定義可以實現這一點。在客戶端,服務定義使客戶端了解服務器支持的所有服務和方法以及消息負載結構、支持的字段和數據類型。任何不遵循服務定義強制執(zhí)行的規(guī)定的行為都會導致錯誤。在請求執(zhí)行過程中,服務定義用于序列化雙方交換的信息。
gRPC 使用protobuf(協議緩沖區(qū))作為接口定義語言(IDL)來定義服務定義。創(chuàng)建 gRPC 請求時,您需要將適當的服務定義添加到請求以選擇要調用的方法。您可以通過前往gRPC 請求中的“服務定義”選項卡來配置服務定義。
創(chuàng)建新請求時,如果未配置服務定義,Postman 會在您選擇“方法選擇”下拉列表時提示您進行配置。此接口可作為一種快速方式來添加您的服務定義并繼續(xù)調用您的請求。.proto從這個菜單中,您可以選擇工作區(qū)中可用的 protobuf API,或者通過將文件從本地系統拖放到 Postman 中來導入新 API 。
要將服務定義加載到請求中,您可以使用服務器反射來加載服務定義,或者使用 protobuf API 作為服務定義。
如果由服務器啟用,服務器反射可能是將服務定義添加到客戶端的最簡單方法。它從服務器獲取模式中可用的最新信息,而無需您手動加載文件.proto或創(chuàng)建 protobuf 模式。輸入 URL,Postman 會自動加載服務定義。
如果服務器未啟用服務器反射,您可以使用 protobuf API 作為請求的服務定義。為此,您可以在工作區(qū)中選擇現有的 protobuf API,或者將文件.proto作為 protobuf API 導入 Postman。您還可以使用 Postman API Builder 創(chuàng)建新的 protobuf API。
轉到Service definition選項卡并選擇Select a protobuf API from this workspace。這將打開API 選擇下拉列表,您可以在其中瀏覽可用的 API 并選擇您要使用的 API。
在測試服務時,您還可以通過選擇API 名稱旁邊的版本選擇器來切換到所選 API 的不同版本。
如果您的工作區(qū)中沒有可用的 protobuf API,您還可以將.proto文件作為 protobuf API 導入 Postman,并將其用作服務定義。
要導入.proto文件,請執(zhí)行以下操作:
這將從文件中創(chuàng)建一個新的 protobuf API .proto,并將其作為服務定義用于請求中。
您還可以將該.proto文件導入為現有 API 的更新。在Import as API界面上,您可以從工作區(qū)的可用 API 列表中選擇一個 API,并將該.proto文件添加為新版本。您還可以通過從列表中選擇現有版本來將其替換為現有版本。
除了.proto從本地系統導入文件,您還可以.proto通過在導入界面中輸入 URL 而不是選擇Choose a file來從 URL 獲取文件。
Postman 支持導入多文件模式。您可以導入.proto包含引用其他文件的指令的文件import。
有時,gRPC 模式可以分為多個 .proto 文件。這些 .proto 文件通過模式中的導入指令引用。/Users/johndoe/projects/my-app/protos/enums/NumericEnum.proto包含絕對路徑(例如)和相對路徑( )的導入指令../enums/NumericEnum.proto由 Postman 自動解析,不需要任何額外配置。如果導入指令不包含絕對路徑或相對路徑,則必須添加它們的父目錄。
考慮這個示例文件結構:
在此示例中,root.proto包含引用文件夾.proto中其他文件的導入指令protos。這些導入指令在架構中可能看起來像這樣:
import "enums/NumericEnum.proto"
import "messages/EmptyMessage.proto"
import "messages/HelloResponse.proto"
import "messages/HelloRequest.proto"
在這種情況下,您需要將enums和messages(換句話說,protos)的父目錄配置為您在 Postman 中的導入路徑。添加的導入路徑可能如下所示:/Users/johndoe/projects/my-app/protos/. 選擇要導入的文件后,您可以使用導入流程中的導入路徑選項在請求中配置導入路徑。
轉到服務定義選項卡并選擇創(chuàng)建新 API。這將啟動創(chuàng)建新 API 流程,您必須在其中命名新 API 和版本,并選擇要創(chuàng)建的 API 類型。Postman 支持在protobuf 語言的版本 2 和 3 中創(chuàng)建 protobuf API 。完成后,選擇Create New API。這將在新選項卡中的 Postman API Builder 中打開 API。
了解有關使用 API Builder 創(chuàng)建和管理 protobuf API 的更多信息。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯系方式:
更多建議: