aboutsummaryrefslogtreecommitdiffstats
path: root/rpc/http
diff options
context:
space:
mode:
authorobscuren <geffobscura@gmail.com>2015-02-06 03:44:30 +0800
committerobscuren <geffobscura@gmail.com>2015-02-06 03:44:30 +0800
commitd00e2731e50f5b535e5deba63ea7f93168906712 (patch)
treead910fd3335d5bc7b7741196b91e340d4322a503 /rpc/http
parentdb7c34a9df19d5a8a3a02a5e3d4cafcffa18dcb8 (diff)
parent429077a5a043ea6664f795ab34ad09ec2f65286f (diff)
downloaddexon-d00e2731e50f5b535e5deba63ea7f93168906712.tar.gz
dexon-d00e2731e50f5b535e5deba63ea7f93168906712.tar.zst
dexon-d00e2731e50f5b535e5deba63ea7f93168906712.zip
Merge branch 'develop' of https://github.com/tgerring/go-ethereum into tgerring-develop
Conflicts: rpc/http/server.go
Diffstat (limited to 'rpc/http')
-rw-r--r--rpc/http/server.go13
1 files changed, 8 insertions, 5 deletions
diff --git a/rpc/http/server.go b/rpc/http/server.go
index bcfd46234..7dcd6b867 100644
--- a/rpc/http/server.go
+++ b/rpc/http/server.go
@@ -84,6 +84,7 @@ func (s *RpcHttpServer) Start() {
}
func (s *RpcHttpServer) apiHandler(api *rpc.EthereumApi) http.Handler {
+ var jsonrpcver string = "2.0"
fn := func(w http.ResponseWriter, req *http.Request) {
w.Header().Set("Access-Control-Allow-Origin", "*")
@@ -91,20 +92,22 @@ func (s *RpcHttpServer) apiHandler(api *rpc.EthereumApi) http.Handler {
reqParsed, reqerr := JSON.ParseRequestBody(req)
if reqerr != nil {
- JSON.Send(w, &rpc.RpcErrorResponse{JsonRpc: reqParsed.JsonRpc, ID: reqParsed.ID, Error: true, ErrorText: rpc.ErrorParseRequest})
+ jsonerr := &rpc.RpcErrorObject{-32700, rpc.ErrorParseRequest}
+ JSON.Send(w, &rpc.RpcErrorResponse{JsonRpc: jsonrpcver, ID: nil, Error: jsonerr})
return
}
var response interface{}
reserr := api.GetRequestReply(&reqParsed, &response)
if reserr != nil {
- rpchttplogger.Errorln(reserr)
- JSON.Send(w, &rpc.RpcErrorResponse{JsonRpc: reqParsed.JsonRpc, ID: reqParsed.ID, Error: true, ErrorText: reserr.Error()})
+ rpchttplogger.Warnln(reserr)
+ jsonerr := &rpc.RpcErrorObject{-32603, reserr.Error()}
+ JSON.Send(w, &rpc.RpcErrorResponse{JsonRpc: jsonrpcver, ID: &reqParsed.ID, Error: jsonerr})
return
}
- rpchttplogger.DebugDetailf("Generated response: %T %s", response, response)
- JSON.Send(w, &rpc.RpcSuccessResponse{JsonRpc: reqParsed.JsonRpc, ID: reqParsed.ID, Error: false, Result: response})
+ rpchttplogger.Debugf("Generated response: %T %s", response, response)
+ JSON.Send(w, &rpc.RpcSuccessResponse{JsonRpc: jsonrpcver, ID: reqParsed.ID, Result: response})
}
return http.HandlerFunc(fn)