JSON RPC 2.0:响应是部分错误和部分结果
JSON RPC 2.0: response that is part error and part result
当只有部分失败时,returning JSON RPC 响应的标准方法是什么?看来 both 'result' and 'error' cannot both be set.
我们有这样一种情况,其中服务器正在聚合多个站点的结果 运行 相同 API。聚合的原因是由于Same-Origin Policy。每个站点都可能以结果或错误作为响应。如果一些响应结果而另一些响应错误,那么聚合服务器 return 作为对原始调用者的完整响应是什么?
a =(method)=> b
b =(method)=> c
b =(method)=> d
b <=(error)== c
b <=(result)= d
a <=(??????)= b
是否最好简单地 return 两个回复(一个有任何错误但没有 'id' 另一个有结果和一个 'id' 表明这是最后一个回复)?
服务器负责聚合和return结果,其中可能包含错误。这就是您的客户所期望的。
--> {"jsonrpc": "2.0", "method": "getResults", "id": 1}
<-- {"jsonrpc": "2.0", "result": [ "success", "error" ], "id": 1}
如果服务器本身由于任何意外原因无法处理请求,您应该return一个错误。
当只有部分失败时,returning JSON RPC 响应的标准方法是什么?看来 both 'result' and 'error' cannot both be set.
我们有这样一种情况,其中服务器正在聚合多个站点的结果 运行 相同 API。聚合的原因是由于Same-Origin Policy。每个站点都可能以结果或错误作为响应。如果一些响应结果而另一些响应错误,那么聚合服务器 return 作为对原始调用者的完整响应是什么?
a =(method)=> b
b =(method)=> c
b =(method)=> d
b <=(error)== c
b <=(result)= d
a <=(??????)= b
是否最好简单地 return 两个回复(一个有任何错误但没有 'id' 另一个有结果和一个 'id' 表明这是最后一个回复)?
服务器负责聚合和return结果,其中可能包含错误。这就是您的客户所期望的。
--> {"jsonrpc": "2.0", "method": "getResults", "id": 1}
<-- {"jsonrpc": "2.0", "result": [ "success", "error" ], "id": 1}
如果服务器本身由于任何意外原因无法处理请求,您应该return一个错误。