3 回答

TA貢獻1802條經驗 獲得超6個贊
為原型布夫擴展指定 JSON 名稱是你問題的答案嗎?
message TestMessage { string other_id = 2 [json_name="otherId"]; }
google.protobuf.Duration
應該是一個字符串。在這里閱讀評論

TA貢獻1829條經驗 獲得超7個贊
我假設你正在得到,你想要.OtherId
otherId
創建一個新類型并將其映射到原始生成的類型|可能是最簡單的。這為您提供了所需的映射,而無需進行任何“雜技”來保持快樂并獲得所需的JSON。protoc
我很驚訝,它檢測到并強制。您希望這是一個數字而不是一個字符串。您是否嘗試過使用例如 在您的消息定義中,而不是(它不是)?duration
uint32
string

TA貢獻1789條經驗 獲得超8個贊
按照 grpc 快速入門指南 進入那里 網站() grpc.io/docs/languages/go/quickstartprotoc version 3
通過更新他們的例子,在這里說改變你好請求如下,并按照這個命令重新生成grp代碼。hello world
message HelloRequest {
// id is something.
string id = 1;
// otherId is something.
string otherId = 2;
// duration is something.
string duration = 3;
}
重新生成命令
--go-grpc_out=. --go-grpc_opt=paths=source_relative \
helloworld/helloworld.proto
它將使用您的字段創建 grpc 請求,而不會出現錯誤。
- 3 回答
- 0 關注
- 107 瀏覽
添加回答
舉報