【发布时间】:2018-09-23 14:52:39
【问题描述】:
我从事 Web 开发(主要作为后端开发人员)工作近 10 年,当用户未通过身份验证时,我使用的大多数服务返回状态为 401 Unauthorized。在最近与一位同事的讨论中,他们建议我们在用户未通过身份验证时返回状态 404 Not Found,这样我们甚至不会透露该 URL 中存在的端点。
我知道他们来自哪里,但对我来说感觉不对。这样你就不能轻易判断失败是因为用户没有经过身份验证,还是因为 URL 不正确。
我查看了 RFC7235,它声明如下:
404(未找到)状态码表示源服务器已 找不到目标资源的当前表示或者不是 愿意透露它的存在。
这与我的同事建议的参数相同,所以当用户未通过身份验证时,我是否应该为请求返回 404 Not Found?
【问题讨论】: