From 103eb1ec6a7ebea703dfc75a199b11a4ec83eb7b Mon Sep 17 00:00:00 2001 From: dingjun Date: Mon, 31 May 2021 13:17:35 +0800 Subject: [PATCH] change id to int --- jsonrpc.go | 4 ++-- websocket_transport.go | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/jsonrpc.go b/jsonrpc.go index f7d851d..d3d8557 100644 --- a/jsonrpc.go +++ b/jsonrpc.go @@ -22,14 +22,14 @@ type request struct { Version string `json:"jsonrpc"` Method string `json:"method"` Params interface{} `json:"params"` - ID string `json:"id"` + ID uint64 `json:"id"` } type response struct { Version string `json:"jsonrpc"` Result json.RawMessage `json:"result"` Error *Error `json:"error"` - ID string `json:"id"` + ID uint64 `json:"id"` Method string `json:"method"` Params json.RawMessage `json:"params"` } diff --git a/websocket_transport.go b/websocket_transport.go index cd7398b..3ace1a4 100644 --- a/websocket_transport.go +++ b/websocket_transport.go @@ -17,7 +17,7 @@ type WebsocketTransport struct { Conn *websocket.Conn URL string Mu *sync.Mutex - inflight map[string]*inflightReq + inflight map[uint64]*inflightReq nextid uint64 err error ctx context.Context @@ -52,7 +52,7 @@ func NewWebsocketTransport(ctx context.Context, uri string) (Transport, error) { w := &WebsocketTransport{ Conn: conn, URL: uri, - inflight: make(map[string]*inflightReq), + inflight: make(map[uint64]*inflightReq), subscribes: make(map[string][]*inflightReq), Mu: new(sync.Mutex), } @@ -96,7 +96,7 @@ func (h *WebsocketTransport) readloop() { return } - if res.ID != "" { + if res.ID != 0 { // response h.Mu.Lock() @@ -173,7 +173,7 @@ func (h *WebsocketTransport) Call(method string, args interface{}, reply interfa return h.err } - id := fmt.Sprintf("%d", h.nextID()) + id := h.nextID() req := request{ ID: id, Version: "2.0", @@ -191,7 +191,7 @@ func (h *WebsocketTransport) Call(method string, args interface{}, reply interfa h.Mu.Lock() h.inflight[id] = &inflightReq{ - id: id, + id: fmt.Sprintf("%d", id), ch: ch, errch: errch, }