netramesh

Форк
0
/
status.go 
148 строк · 7.1 Кб
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
}
149

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.