我有一个返回内容类型JSON的文档,如下所示:
{
"employees": [{
"firstName": "John",
"lastName": "Doe"
}, {
"firstName": "Anna",
"lastName": "Smith"
}, {
"firstName": "Peter",
"lastName": "Jones"
}]
};
很平常的事情。
现在我必须检查用户是否有权检索结果。用户不应该得到任何结果可能有不同的原因。也许他没有登录或没有权限访问"员工" -data。
因为JSON是由与Javascript相关的东西调用的,所以我可以返回另一个字符串,如
{ "error" : "I do not know you pal!" }
或
{ "error" : "You do not have enough permissions" }
为了保持标准,非200 HTTP返回码将是正确的恕我直言。因此,返回403(或401)状态代码应该是正确的选择。
但现在我的问题(最后):
当我在标题中返回403状态代码时:身体中的JSON-Content是否仍会在任何浏览器上传送到客户端?或者有些浏览器会在收到错误标题时丢弃正文?
处理JSON响应内容类型错误的推荐方法是什么?
更新: 我们假设响应是由REST-Api创建的,它以JSON格式创建响应。所以4xx-Status代码应该是有效的。至少像GoogleApi这样的大玩家。 Twilio等使用这些代码)