实际上这是一个设计问题。 GET请求http://myserver/R1到我的服务器查询资源R1。该资源可在多个服务器上使用([s1,s2,s3,s4 ... sN]称为list1)。因此,我将请求转发到list1的那些服务器并收集它们的响应。 来自这些不同服务器的响应可能是成功的,也可能是不成功的。 例如。 响应成功的所有服务器的数据表示为:
{
"server" : "server name e.g. s1",
"value" : "some value of R1"
}
响应不成功的所有服务器的数据表示为:
{
"server" : "server name e.g. s3",
"error_code" : "XXX",
"error_msg" : "YYY"
}
现在,我需要将多个服务器的对象合并为一个对象数组,然后将此数组返回给客户端。 那么我的Json数组应该是什么设计?
[
{ "server" : "s2", "value" : "some value of R1" },
{ "server" : "s4", "value" : "some value of R1" },
{ "server" : "s1", "error_code" : "1", "error_msg" : "YYY" },
{ "server" : "s3", "value" : "some value of R1" },
{ "server" : "s5", "error_code" : "2", "error_msg" : "YYY" }
]
我应该将此数组原样返回给客户端吗? 或
[
{ "server" : "s2", "error_code" : "", "error_msg" : "", "value" : "some value of R1" },
{ "server" : "s4", "error_code" : "", "error_msg" : "", "value" : "some value of R1" },
{ "server" : "s1", "error_code" : "1", "error_msg" : "YYY", "value" : null },
{ "server" : "s3", "error_code" : "", "error_msg" : "", "value" : "some value of R1" },
{ "server" : "s5", "error_code" : "2", "error_msg" : "ZZZ", "value" : null },
]
更好。