在用户调用我的webservice时,我在数据库中插入记录并生成自动增量键。 我想以下列格式发送回复:
{
"status" : "success",
"autogenerated_id" : 1
}
以下是我的代码和o / p
WsResponse resp = new WsResponse();
resp.setStatus("success");
resp.addData("autogenerated_id", autogenerated_id);
回应是:
{
"status": "success",
"response": {
"autogenerated_id": 8
}
}
我可以更改哪些内容,以便将autogenerated_id置于与状态相同的级别? 或者我可以将文本“响应”更改为“数据”之类的任何其他文本吗?
答案 0 :(得分:1)
你无法做你想做的事,原因很简单。 您看到的对象是与HTTP连接相关的响应对象(200-> OK,404->未找到,500>内部服务器错误等),而不是来自数据库过程的结果状态。 除此之外,您可以发回任何您喜欢的内容,但它必须位于响应对象内。 它看起来应该是这样的
{
"status": "success", //result of the connection.
"response": {
"status": "success", //result of the db procedure.
"autogenerated_id": 8
}
}
使用不同的格式和编码将返回的对象转换为字符串,然后将其发送回客户端(在您的情况下为json)。 客户端是将字符串转回对象的人。 如果您正在打印响应对象,则无法更改它。但是,如果要打印从服务器接收的数据,则可以根据需要返回不同的对象。