簡體   English   中英

Jsonrpc4j和go的rpc / jsonrpc之間的JSONRPC格式不同

[英]JSONRPC format different between Jsonrpc4j and go's rpc/jsonrpc

當我嘗試使用net / jsonrpc軟件包使用jsonrpc4j構建服務器和Java客戶端時遇到問題

問題是jsonrpc4j是發生錯誤時,golang的方法將返回錯誤並編碼為json。

我在客戶端中得到了這個json對象

{“ id”:-6028374044949000,“結果”:null,“錯誤”:“某些錯誤返回消息”}

在Java的json4j中此對象轉換失敗。

http://www.jsonrpc.org/specification#error_object

在檢查jsonrpc頁面后,據說錯誤字段必須是帶有字段[code,message,date]的json對象,golang jsonrpc包不符合要求。

所以我很困惑如何解決這個問題。 更改jsonrpc庫,只需將rpc方式替換為thrift / gRpc,避免返回錯誤,而是在發送回復時發送錯誤並讓Java檢查響應,或者只是編輯了json4j或golang的源代碼(我對這個選項感到非常恐懼)

感謝收看。

如果您需要Go的JSON-RPC 2.0支持,則可以嘗試https://github.com/powerman/rpc-codec

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM