Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Update Rack::Utils::HTTP_STATUS_CODES hash

This adds the following status code lookups for the 102, 207,
226, 306, 422, 423, 424, 426, 506, 507, and 510 status codes.

Signed-off-by: Joshua Peek <josh@joshpeek.com>
  • Loading branch information...
commit ca6f9f9f9232d5f27b5161135b1bd668c1dc9790 1 parent 71030b9
Eric Wong authored josh committed
Showing with 17 additions and 3 deletions.
  1. +17 −3 lib/rack/utils.rb
View
20 lib/rack/utils.rb
@@ -318,10 +318,14 @@ def replace(other)
end
# Every standard HTTP code mapped to the appropriate message.
- # Stolen from Mongrel.
+ # Generated with:
+ # curl -s http://www.iana.org/assignments/http-status-codes | \
+ # ruby -ane 'm = /^(\d{3}) +(\S[^\[(]+)/.match($_) and
+ # puts " #{m[1]} => \x27#{m[2].strip}x27,"'
HTTP_STATUS_CODES = {
100 => 'Continue',
101 => 'Switching Protocols',
+ 102 => 'Processing',
200 => 'OK',
201 => 'Created',
202 => 'Accepted',
@@ -329,12 +333,15 @@ def replace(other)
204 => 'No Content',
205 => 'Reset Content',
206 => 'Partial Content',
+ 207 => 'Multi-Status',
+ 226 => 'IM Used',
300 => 'Multiple Choices',
301 => 'Moved Permanently',
302 => 'Found',
303 => 'See Other',
304 => 'Not Modified',
305 => 'Use Proxy',
+ 306 => 'Reserved',
307 => 'Temporary Redirect',
400 => 'Bad Request',
401 => 'Unauthorized',
@@ -350,16 +357,23 @@ def replace(other)
411 => 'Length Required',
412 => 'Precondition Failed',
413 => 'Request Entity Too Large',
- 414 => 'Request-URI Too Large',
+ 414 => 'Request-URI Too Long',
415 => 'Unsupported Media Type',
416 => 'Requested Range Not Satisfiable',
417 => 'Expectation Failed',
+ 422 => 'Unprocessable Entity',
+ 423 => 'Locked',
+ 424 => 'Failed Dependency',
+ 426 => 'Upgrade Required',
500 => 'Internal Server Error',
501 => 'Not Implemented',
502 => 'Bad Gateway',
503 => 'Service Unavailable',
504 => 'Gateway Timeout',
- 505 => 'HTTP Version Not Supported'
+ 505 => 'HTTP Version Not Supported',
+ 506 => 'Variant Also Negotiates',
+ 507 => 'Insufficient Storage',
+ 510 => 'Not Extended',
}
# Responses with HTTP status codes that should not have an entity body
Please sign in to comment.
Something went wrong with that request. Please try again.