10

朋友和其他用户,

我们有 402 和 403 http 响应代码。不过,402 保留供将来使用。

这两者之间是(或将会是)什么区别。未收到付款应该等于未授权,不是吗?

编辑:我想知道“当我们已经有 403 角度时为什么需要 402”的答案。

4

3 回答 3

11

HTTP 状态码 402 确实与 403 不同:

正如RFC 2616中所述,状态码 402 是

402 Payment Required

这意味着该请求通常不会被禁止,但需要付款。显然它被某些服务以预期的方式使用 HTTP 状态代码列表

我认为目前不需要它(或者只是没有使用,因为没有指定如何使用),但是标准的作者做了一些想法,把它放在将来使用,这可能是有用的。

于 2012-09-25T12:54:07.670 回答
6

403 禁止

服务器理解请求,但拒绝执行。授权将无济于事,并且不应重复请求。如果请求方法不是 HEAD 并且服务器希望公开请求未完成的原因,它应该在实体中描述拒绝的原因。如果服务器不希望向客户端提供此信息,则可以使用状态代码 404(未找到)来代替。

http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html

点这有帮助吗?

于 2009-08-13T08:36:30.393 回答
2

请注意,错过付款只是您的服务器拒绝请求的一个原因。您可以在其他情况下获得“禁止”状态,例如无效凭据、尝试访问“私有资源”等...

我相信 402 的存在只是为了提供有关拒绝请求的原因的更多详细信息。

于 2015-03-27T17:14:36.303 回答