github.com/corona10/go@v0.0.0-20180224231303-7a218942be57/src/net/http/status.go (about) 1 // Copyright 2009 The Go Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 package http 6 7 // HTTP status codes as registered with IANA. 8 // See: https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml 9 const ( 10 StatusContinue = 100 // RFC 7231, 6.2.1 11 StatusSwitchingProtocols = 101 // RFC 7231, 6.2.2 12 StatusProcessing = 102 // RFC 2518, 10.1 13 14 StatusOK = 200 // RFC 7231, 6.3.1 15 StatusCreated = 201 // RFC 7231, 6.3.2 16 StatusAccepted = 202 // RFC 7231, 6.3.3 17 StatusNonAuthoritativeInfo = 203 // RFC 7231, 6.3.4 18 StatusNoContent = 204 // RFC 7231, 6.3.5 19 StatusResetContent = 205 // RFC 7231, 6.3.6 20 StatusPartialContent = 206 // RFC 7233, 4.1 21 StatusMultiStatus = 207 // RFC 4918, 11.1 22 StatusAlreadyReported = 208 // RFC 5842, 7.1 23 StatusIMUsed = 226 // RFC 3229, 10.4.1 24 25 StatusMultipleChoices = 300 // RFC 7231, 6.4.1 26 StatusMovedPermanently = 301 // RFC 7231, 6.4.2 27 StatusFound = 302 // RFC 7231, 6.4.3 28 StatusSeeOther = 303 // RFC 7231, 6.4.4 29 StatusNotModified = 304 // RFC 7232, 4.1 30 StatusUseProxy = 305 // RFC 7231, 6.4.5 31 _ = 306 // RFC 7231, 6.4.6 (Unused) 32 StatusTemporaryRedirect = 307 // RFC 7231, 6.4.7 33 StatusPermanentRedirect = 308 // RFC 7538, 3 34 35 StatusBadRequest = 400 // RFC 7231, 6.5.1 36 StatusUnauthorized = 401 // RFC 7235, 3.1 37 StatusPaymentRequired = 402 // RFC 7231, 6.5.2 38 StatusForbidden = 403 // RFC 7231, 6.5.3 39 StatusNotFound = 404 // RFC 7231, 6.5.4 40 StatusMethodNotAllowed = 405 // RFC 7231, 6.5.5 41 StatusNotAcceptable = 406 // RFC 7231, 6.5.6 42 StatusProxyAuthRequired = 407 // RFC 7235, 3.2 43 StatusRequestTimeout = 408 // RFC 7231, 6.5.7 44 StatusConflict = 409 // RFC 7231, 6.5.8 45 StatusGone = 410 // RFC 7231, 6.5.9 46 StatusLengthRequired = 411 // RFC 7231, 6.5.10 47 StatusPreconditionFailed = 412 // RFC 7232, 4.2 48 StatusRequestEntityTooLarge = 413 // RFC 7231, 6.5.11 49 StatusRequestURITooLong = 414 // RFC 7231, 6.5.12 50 StatusUnsupportedMediaType = 415 // RFC 7231, 6.5.13 51 StatusRequestedRangeNotSatisfiable = 416 // RFC 7233, 4.4 52 StatusExpectationFailed = 417 // RFC 7231, 6.5.14 53 StatusTeapot = 418 // RFC 7168, 2.3.3 54 StatusMisdirectedRequest = 421 // RFC 7540, 9.1.2 55 StatusUnprocessableEntity = 422 // RFC 4918, 11.2 56 StatusLocked = 423 // RFC 4918, 11.3 57 StatusFailedDependency = 424 // RFC 4918, 11.4 58 StatusUpgradeRequired = 426 // RFC 7231, 6.5.15 59 StatusPreconditionRequired = 428 // RFC 6585, 3 60 StatusTooManyRequests = 429 // RFC 6585, 4 61 StatusRequestHeaderFieldsTooLarge = 431 // RFC 6585, 5 62 StatusUnavailableForLegalReasons = 451 // RFC 7725, 3 63 64 StatusInternalServerError = 500 // RFC 7231, 6.6.1 65 StatusNotImplemented = 501 // RFC 7231, 6.6.2 66 StatusBadGateway = 502 // RFC 7231, 6.6.3 67 StatusServiceUnavailable = 503 // RFC 7231, 6.6.4 68 StatusGatewayTimeout = 504 // RFC 7231, 6.6.5 69 StatusHTTPVersionNotSupported = 505 // RFC 7231, 6.6.6 70 StatusVariantAlsoNegotiates = 506 // RFC 2295, 8.1 71 StatusInsufficientStorage = 507 // RFC 4918, 11.5 72 StatusLoopDetected = 508 // RFC 5842, 7.2 73 StatusNotExtended = 510 // RFC 2774, 7 74 StatusNetworkAuthenticationRequired = 511 // RFC 6585, 6 75 ) 76 77 var statusText = map[int]string{ 78 StatusContinue: "Continue", 79 StatusSwitchingProtocols: "Switching Protocols", 80 StatusProcessing: "Processing", 81 82 StatusOK: "OK", 83 StatusCreated: "Created", 84 StatusAccepted: "Accepted", 85 StatusNonAuthoritativeInfo: "Non-Authoritative Information", 86 StatusNoContent: "No Content", 87 StatusResetContent: "Reset Content", 88 StatusPartialContent: "Partial Content", 89 StatusMultiStatus: "Multi-Status", 90 StatusAlreadyReported: "Already Reported", 91 StatusIMUsed: "IM Used", 92 93 StatusMultipleChoices: "Multiple Choices", 94 StatusMovedPermanently: "Moved Permanently", 95 StatusFound: "Found", 96 StatusSeeOther: "See Other", 97 StatusNotModified: "Not Modified", 98 StatusUseProxy: "Use Proxy", 99 StatusTemporaryRedirect: "Temporary Redirect", 100 StatusPermanentRedirect: "Permanent Redirect", 101 102 StatusBadRequest: "Bad Request", 103 StatusUnauthorized: "Unauthorized", 104 StatusPaymentRequired: "Payment Required", 105 StatusForbidden: "Forbidden", 106 StatusNotFound: "Not Found", 107 StatusMethodNotAllowed: "Method Not Allowed", 108 StatusNotAcceptable: "Not Acceptable", 109 StatusProxyAuthRequired: "Proxy Authentication Required", 110 StatusRequestTimeout: "Request Timeout", 111 StatusConflict: "Conflict", 112 StatusGone: "Gone", 113 StatusLengthRequired: "Length Required", 114 StatusPreconditionFailed: "Precondition Failed", 115 StatusRequestEntityTooLarge: "Request Entity Too Large", 116 StatusRequestURITooLong: "Request URI Too Long", 117 StatusUnsupportedMediaType: "Unsupported Media Type", 118 StatusRequestedRangeNotSatisfiable: "Requested Range Not Satisfiable", 119 StatusExpectationFailed: "Expectation Failed", 120 StatusTeapot: "I'm a teapot", 121 StatusMisdirectedRequest: "Misdirected Request", 122 StatusUnprocessableEntity: "Unprocessable Entity", 123 StatusLocked: "Locked", 124 StatusFailedDependency: "Failed Dependency", 125 StatusUpgradeRequired: "Upgrade Required", 126 StatusPreconditionRequired: "Precondition Required", 127 StatusTooManyRequests: "Too Many Requests", 128 StatusRequestHeaderFieldsTooLarge: "Request Header Fields Too Large", 129 StatusUnavailableForLegalReasons: "Unavailable For Legal Reasons", 130 131 StatusInternalServerError: "Internal Server Error", 132 StatusNotImplemented: "Not Implemented", 133 StatusBadGateway: "Bad Gateway", 134 StatusServiceUnavailable: "Service Unavailable", 135 StatusGatewayTimeout: "Gateway Timeout", 136 StatusHTTPVersionNotSupported: "HTTP Version Not Supported", 137 StatusVariantAlsoNegotiates: "Variant Also Negotiates", 138 StatusInsufficientStorage: "Insufficient Storage", 139 StatusLoopDetected: "Loop Detected", 140 StatusNotExtended: "Not Extended", 141 StatusNetworkAuthenticationRequired: "Network Authentication Required", 142 } 143 144 // StatusText returns a text for the HTTP status code. It returns the empty 145 // string if the code is unknown. 146 func StatusText(code int) string { 147 return statusText[code] 148 }