首页 > 搜索 > HTTP错误代码为什么跳过了402?

HTTP错误代码为什么跳过了402?

互联网 2020-07-02 20:20:21

你还是太嫩了,孩子。作为一只喵,大舒的朋友们都知道402是个啥。

喔,现在大舒不是喵了,是熊喵。

版权声明:感谢评论区小恶魔的指正,本文中的图片原始来源是https://http.cat/。

图片纯属搞笑,

写过http代码仅仅是个头,他的意思都是人赋予的,

纠正几个观点,

402和“当初制定出402的那帮人是怎么想的,为什么最后没有实现,将来到底有没有一天会实现”是没有关系的,402是http规定返回的代码,一定是由程序员来实现,而不是由指定的那帮人来实现。

并不是说payment required就一定要用402,而是说,返回值是402的原因是因为payment required。

程序员可以不实现402,可以花式实现402。你没付费,我可以不让你402,从逻辑上讲,我可以让你403 forbidden,我也可以给你一个302跳转到收费界面,我也可以给你一个200界面要求充值,这个并不冲突。如果只是个json接口,那么有些情况下他们甚至在json结构体内自行定义errorCode和errorMessage,接口外部全用200,这也没什么问题。

敲黑板,相比于402,我们更需要关注5XX错误代码。

下面是干货:

(来源:go包源码,提供了RFC出处)

// HTTP status codes, defined in RFC 2616.const ( StatusContinue = 100 StatusSwitchingProtocols = 101

StatusOK = 200 StatusCreated= 201 StatusAccepted = 202 StatusNonAuthoritativeInfo = 203 StatusNoContent= 204 StatusResetContent = 205 StatusPartialContent = 206

StatusMultipleChoices = 300 StatusMovedPermanently= 301 StatusFound = 302 StatusSeeOther= 303 StatusNotModified = 304 StatusUseProxy= 305 StatusTemporaryRedirect = 307

StatusBadRequest = 400 StatusUnauthorized = 401 StatusPaymentRequired= 402 StatusForbidden= 403 StatusNotFound = 404 StatusMethodNotAllowed = 405 StatusNotAcceptable= 406 StatusProxyAuthRequired= 407 StatusRequestTimeout = 408 StatusConflict = 409 StatusGone = 410 StatusLengthRequired = 411 StatusPreconditionFailed = 412 StatusRequestEntityTooLarge= 413 StatusRequestURITooLong= 414 StatusUnsupportedMediaType = 415 StatusRequestedRangeNotSatisfiable = 416 StatusExpectationFailed= 417 StatusTeapot = 418

StatusInternalServerError = 500 StatusNotImplemented= 501 StatusBadGateway= 502 StatusServiceUnavailable= 503 StatusGatewayTimeout= 504 StatusHTTPVersionNotSupported = 505

// New HTTP status codes from RFC 6585. Not exported yet in Go 1.1. // See discussion at https://codereview.appspot.com/7678043/ statusPreconditionRequired= 428 statusTooManyRequests = 429 statusRequestHeaderFieldsTooLarge = 431 statusNetworkAuthenticationRequired = 511)
免责声明:非本网注明原创的信息,皆为程序自动获取互联网,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责;如此页面有侵犯到您的权益,请给站长发送邮件,并提供相关证明(版权证明、身份证正反面、侵权链接),站长将在收到邮件12小时内删除。