be47d6ecef
From-SVN: r200974
121 lines
4.6 KiB
Go
121 lines
4.6 KiB
Go
// Copyright 2009 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package http
|
|
|
|
// 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
|
|
)
|
|
|
|
var statusText = map[int]string{
|
|
StatusContinue: "Continue",
|
|
StatusSwitchingProtocols: "Switching Protocols",
|
|
|
|
StatusOK: "OK",
|
|
StatusCreated: "Created",
|
|
StatusAccepted: "Accepted",
|
|
StatusNonAuthoritativeInfo: "Non-Authoritative Information",
|
|
StatusNoContent: "No Content",
|
|
StatusResetContent: "Reset Content",
|
|
StatusPartialContent: "Partial Content",
|
|
|
|
StatusMultipleChoices: "Multiple Choices",
|
|
StatusMovedPermanently: "Moved Permanently",
|
|
StatusFound: "Found",
|
|
StatusSeeOther: "See Other",
|
|
StatusNotModified: "Not Modified",
|
|
StatusUseProxy: "Use Proxy",
|
|
StatusTemporaryRedirect: "Temporary Redirect",
|
|
|
|
StatusBadRequest: "Bad Request",
|
|
StatusUnauthorized: "Unauthorized",
|
|
StatusPaymentRequired: "Payment Required",
|
|
StatusForbidden: "Forbidden",
|
|
StatusNotFound: "Not Found",
|
|
StatusMethodNotAllowed: "Method Not Allowed",
|
|
StatusNotAcceptable: "Not Acceptable",
|
|
StatusProxyAuthRequired: "Proxy Authentication Required",
|
|
StatusRequestTimeout: "Request Timeout",
|
|
StatusConflict: "Conflict",
|
|
StatusGone: "Gone",
|
|
StatusLengthRequired: "Length Required",
|
|
StatusPreconditionFailed: "Precondition Failed",
|
|
StatusRequestEntityTooLarge: "Request Entity Too Large",
|
|
StatusRequestURITooLong: "Request URI Too Long",
|
|
StatusUnsupportedMediaType: "Unsupported Media Type",
|
|
StatusRequestedRangeNotSatisfiable: "Requested Range Not Satisfiable",
|
|
StatusExpectationFailed: "Expectation Failed",
|
|
StatusTeapot: "I'm a teapot",
|
|
|
|
StatusInternalServerError: "Internal Server Error",
|
|
StatusNotImplemented: "Not Implemented",
|
|
StatusBadGateway: "Bad Gateway",
|
|
StatusServiceUnavailable: "Service Unavailable",
|
|
StatusGatewayTimeout: "Gateway Timeout",
|
|
StatusHTTPVersionNotSupported: "HTTP Version Not Supported",
|
|
|
|
statusPreconditionRequired: "Precondition Required",
|
|
statusTooManyRequests: "Too Many Requests",
|
|
statusRequestHeaderFieldsTooLarge: "Request Header Fields Too Large",
|
|
statusNetworkAuthenticationRequired: "Network Authentication Required",
|
|
}
|
|
|
|
// StatusText returns a text for the HTTP status code. It returns the empty
|
|
// string if the code is unknown.
|
|
func StatusText(code int) string {
|
|
return statusText[code]
|
|
}
|