上文給大家詳細介紹了在 Apinto 上實現 HTTP
與 gRPC
的協定轉換的基本內容,本篇我們將繼續講解如何在 Apinto-Dashboard 中進行設定。
Apinto 上我們提供了視覺化介面工具 Apinto-Dashboard,以降低初學者的使用成本,以下操作均在 Apinto-Dashboard 中進行設定。
1. 在全域性外掛中新建 http_to_grpc 外掛
2. 建立 gRPC 服務
在這裡,我們設定 gRPC
服務的相關資訊,我們可以設定多個靜態負載地址,這裡我們填寫了 127.0.0.1:9001。
3.建立 http 路由,繫結 grpc_demo 上游服務
4. 在路由中繫結 http_to_grpc 外掛
由於 gRPC
伺服器端範例中,我們開啟了gRPC
反射,因此,在設定外掛時,開啟反射按鈕即可
注:
當服務名稱不填時,則預設使用 HTTP
請求路徑的第一個/
和第二個 /
之間的值作為服務名;
當方法名稱不填時,則預設使用 HTTP
請求路徑的第二個 / 和第三個 / 之間的值作為服務名;
·即,若 HTTP
請求路徑上 /Service.Hello/Hello
,則此時服務名稱為 Service.Hello
,方法名稱為 Hello
。
若 gRPC
未開啟反射,我們需要先新建一個Protobuf
編碼器,繫結 http_to_grpc
外掛時,繫結對應的編碼器 ID
即可,詳細步驟如下:
1. 建立 Protobuf 編碼器
2. 在路由中繫結 http_to_grpc 外掛
填寫完後提交即可。
1. 啟動 gRPC 伺服器
2.請求 Service.Hello 服務的 Hello 方法
在上文中,我們定義了 Hello 方法的功能:
將 HelloRequest
中的 name
欄位通過 HelloResponse
的 msg
欄位封裝成 hello,%s
的結果返回;
將請求的 Header 作為 gRPC 響應的 Trailer 頭部返回。
呼叫結果如下:
歡迎到 GitHub 體驗