【发布时间】:2011-04-14 07:27:55
【问题描述】:
我应该依赖 http 状态码吗?还是我应该使用某种特殊的回应? 我的服务器正在运行 PHP 并生成简单的 JSON 响应。
【问题讨论】:
标签: php json http http-status-codes
我应该依赖 http 状态码吗?还是我应该使用某种特殊的回应? 我的服务器正在运行 PHP 并生成简单的 JSON 响应。
【问题讨论】:
标签: php json http http-status-codes
我个人认为你应该两者都做!返回适当的 4xx/5xx 状态代码以显示出现问题并将消息包含到您的 JSON 响应中。
例如对于成功的请求:
{
"success": "true"
}
对于失败(例如 405 Method not allowed):
{
"success": "false",
"message": "Requested data not available"
}
【讨论】:
如果您可以使用具有两个属性的实体作为:Status & Message,这可能会更好。
您从上述实体继承查询结果实体。
如果操作成功则设置Status to True else 设置Status to False 并设置适当的error message into the Message property of above entity。
请记住,最好不要将确切的数据库错误放入客户端显示中。这可能会增加黑客攻击的机会,相反,您可以在服务器上记录确切的消息,以便相关人员在出现问题时检查消息。
所以,if Status=True 那么只有客户端可以进一步处理消息(例如访问属性或显示它们等),else if Status=False,然后是在数据访问逻辑处设置的错误文本,进入Message 属性会显示出来。
【讨论】: