go- json-rpc服务收到json报错gunmarshaling request: json: cannot unmarshal string into Go

朱岳
2023-12-01

go收到json,解析报错

无法将字符串解组为int64类型的Go值
参考URL:https://qa.1r1g.com/sf/ask/1480623581/

问题背景:
json-rpd

        OkHttpClient client = new OkHttpClient();

        HashMap<String,Object> jsonMap = new HashMap<>();
        jsonMap.put("jsonrpc","2.0");
        jsonMap.put("method","Taigu.MinerInfo");
        jsonMap.put("params", new ArrayList<>());
        jsonMap.put("id","3");

        RequestBody body = RequestBody.create(mediaType, JSON.toJSONString(jsonMap));

问题是json.Unmarshal无法解组JSON,因为id它不再是整数.

json: cannot unmarshal string into Go value of type int64

解决方法:
jsonMap.put(“id”,“3”); 中的 字符串 “3”, 改成 3 。 测试通过。

 类似资料: