当用户调用我的网络服务时,我正在数据库中插入记录,它会生成自动增量键。我想以以下格式发送响应:
{
"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
}
}
我可以更改什么才能获得与 status 相同级别的 auto generated_id ?或者我可以将文本“response”更改为“data”等任何其他文本吗?
你不能做你想做的事,原因很简单。您看到的对象是与 HTTP 连接相关的响应对象(200->OK、404->Not Found、500->Internal Server Error 等),而不是来自数据库过程的结果状态。除此之外,您可以发送回任何您喜欢的内容,但它必须位于响应对象内。它应该看起来像这样
{
"status": "success", //result of the connection.
"response": {
"status": "success", //result of the db procedure.
"autogenerated_id": 8
}
}
返回的对象使用不同的格式和编码转换为字符串,然后发送回客户端(在您的情况下为 json )。客户端将字符串转回对象。如果您正在打印响应对象,则无法更改它。但是,如果您要打印从服务器接收的数据,那么您可以根据需要简单地返回不同的对象。
我是一名优秀的程序员,十分优秀!