Module: WEBrick::HTTPStatus
- Defined in:
- lib/webrick/httpstatus.rb
Overview
This module is used to manager HTTP status codes.
See www.w3.org/Protocols/rfc2616/rfc2616-sec10.html for more information.
Defined Under Namespace
Classes: ClientError, EOFError, Error, Info, Redirect, ServerError, Status, Success
Constant Summary collapse
- StatusMessage =
HTTP status codes and descriptions
{ # :nodoc: 100 => 'Continue', 101 => 'Switching Protocols', 200 => 'OK', 201 => 'Created', 202 => 'Accepted', 203 => 'Non-Authoritative Information', 204 => 'No Content', 205 => 'Reset Content', 206 => 'Partial Content', 207 => 'Multi-Status', 300 => 'Multiple Choices', 301 => 'Moved Permanently', 302 => 'Found', 303 => 'See Other', 304 => 'Not Modified', 305 => 'Use Proxy', 307 => 'Temporary Redirect', 400 => 'Bad Request', 401 => 'Unauthorized', 402 => 'Payment Required', 403 => 'Forbidden', 404 => 'Not Found', 405 => 'Method Not Allowed', 406 => 'Not Acceptable', 407 => 'Proxy Authentication Required', 408 => 'Request Timeout', 409 => 'Conflict', 410 => 'Gone', 411 => 'Length Required', 412 => 'Precondition Failed', 413 => 'Request Entity Too Large', 414 => 'Request-URI Too Large', 415 => 'Unsupported Media Type', 416 => 'Request Range Not Satisfiable', 417 => 'Expectation Failed', 422 => 'Unprocessable Entity', 423 => 'Locked', 424 => 'Failed Dependency', 426 => 'Upgrade Required', 428 => 'Precondition Required', 429 => 'Too Many Requests', 431 => 'Request Header Fields Too Large', 451 => 'Unavailable For Legal Reasons', 500 => 'Internal Server Error', 501 => 'Not Implemented', 502 => 'Bad Gateway', 503 => 'Service Unavailable', 504 => 'Gateway Timeout', 505 => 'HTTP Version Not Supported', 507 => 'Insufficient Storage', 511 => 'Network Authentication Required', }
- CodeToError =
Maps a status code to the corresponding Status class
{}
Class Method Summary collapse
-
.[](code) ⇒ Object
Returns the status class corresponding to
code
. -
.client_error?(code) ⇒ Boolean
Is
code
a client error status?. -
.error?(code) ⇒ Boolean
Is
code
an error status?. -
.info?(code) ⇒ Boolean
Is
code
an informational status?. -
.reason_phrase(code) ⇒ Object
Returns the description corresponding to the HTTP status
code
. -
.redirect?(code) ⇒ Boolean
Is
code
a redirection status?. -
.server_error?(code) ⇒ Boolean
Is
code
a server error status?. -
.success?(code) ⇒ Boolean
Is
code
a successful status?.
Class Method Details
.[](code) ⇒ Object
Returns the status class corresponding to code
WEBrick::HTTPStatus[302]
=> WEBrick::HTTPStatus::NotFound
186 187 188 |
# File 'lib/webrick/httpstatus.rb', line 186 def self.[](code) CodeToError[code] end |
.client_error?(code) ⇒ Boolean
Is code
a client error status?
170 171 172 |
# File 'lib/webrick/httpstatus.rb', line 170 def client_error?(code) code.to_i >= 400 and code.to_i < 500 end |
.error?(code) ⇒ Boolean
Is code
an error status?
164 165 166 |
# File 'lib/webrick/httpstatus.rb', line 164 def error?(code) code.to_i >= 400 and code.to_i < 600 end |
.info?(code) ⇒ Boolean
Is code
an informational status?
146 147 148 |
# File 'lib/webrick/httpstatus.rb', line 146 def info?(code) code.to_i >= 100 and code.to_i < 200 end |
.reason_phrase(code) ⇒ Object
Returns the description corresponding to the HTTP status code
WEBrick::HTTPStatus.reason_phrase 404
=> "Not Found"
140 141 142 |
# File 'lib/webrick/httpstatus.rb', line 140 def reason_phrase(code) StatusMessage[code.to_i] end |
.redirect?(code) ⇒ Boolean
Is code
a redirection status?
158 159 160 |
# File 'lib/webrick/httpstatus.rb', line 158 def redirect?(code) code.to_i >= 300 and code.to_i < 400 end |
.server_error?(code) ⇒ Boolean
Is code
a server error status?
176 177 178 |
# File 'lib/webrick/httpstatus.rb', line 176 def server_error?(code) code.to_i >= 500 and code.to_i < 600 end |
.success?(code) ⇒ Boolean
Is code
a successful status?
152 153 154 |
# File 'lib/webrick/httpstatus.rb', line 152 def success?(code) code.to_i >= 200 and code.to_i < 300 end |