Skip to content

Instantly share code, notes, and snippets.

@ksavelev
Created December 22, 2011 12:14
Show Gist options
  • Save ksavelev/1510108 to your computer and use it in GitHub Desktop.
Save ksavelev/1510108 to your computer and use it in GitHub Desktop.
Explain HTTP status code on the command line
# based on https://github.com/rspivak/httpcode/blob/master/src/httpcode/__init__.py
# http://ruslanspivak.com/2011/12/21/httpcode-explain-http-status-code-on-the-command-line/
# just put it into your Powershell profile and use like $http_status_code[405]
$http_status_codes = @{
100 = @('<Continue>', 'Request received, please continue');
101 = @('<Switching Protocols>',
'Switching to new protocol; obey Upgrade header');
200 = @('<OK>', 'Request fulfilled, document follows');
201 = @('<Created>', 'Document created, URL follows');
202 = @('<Accepted>',
'Request accepted, processing continues off-line');
203 = @('<Non-Authoritative Information>', 'Request fulfilled from cache');
204 = @('<No Content>', 'Request fulfilled, nothing follows');
205 = @('<Reset Content>', 'Clear input form for further input.');
206 = @('<Partial Content>', 'Partial content follows.');
300 = @('<Multiple Choices>',
'Object has several resources -- see URI list');
301 = @('<Moved Permanently>', 'Object moved permanently -- see URI list');
302 = @('<Found>', 'Object moved temporarily -- see URI list');
303 = @('<See Other>', 'Object moved -- see Method and URL list');
304 = @('<Not Modified>',
'Document has not changed since given time');
305 = @('<Use Proxy>',
'You must use proxy specified in Location to access this '
'resource.');
307 = @('<Temporary Redirect>',
'Object moved temporarily -- see URI list');
400 = @('<Bad Request>',
'Bad request syntax or unsupported method');
401 = @('<Unauthorized>',
'No permission -- see authorization schemes');
402 = @('<Payment Required>',
'No payment -- see charging schemes');
403 = @('<Forbidden>',
'Request forbidden -- authorization will not help');
404 = @('<Not Found>', 'Nothing matches the given URI');
405 = @('<Method Not Allowed>',
'Specified method is invalid for this resource.');
406 = @('<Not Acceptable>', 'URI not available in preferred format.');
407 = @('<Proxy Authentication Required>', 'You must authenticate with '
'this proxy before proceeding.');
408 = @('<Request Timeout>', 'Request timed out; try again later.');
409 = @('<Conflict>', 'Request conflict.');
410 = @('<Gone>',
'URI no longer exists and has been permanently removed.');
411 = @('<Length Required>', 'Client must specify Content-Length.');
412 = @('<Precondition Failed>', 'Precondition in headers is false.');
413 = @('<Request Entity Too Large>', 'Entity is too large.');
414 = @('<Request-URI Too Long>', 'URI is too long.');
415 = @('<Unsupported Media Type>', 'Entity body in unsupported format.');
416 = @('<Requested Range Not Satisfiable>',
'Cannot satisfy request range.');
417 = @('<Expectation Failed>',
'Expect condition could not be satisfied.');
418 = @("I'm a teapot", 'The HTCPCP server is a teapot');
500 = @('<Internal Server Error>', 'Server got itself in trouble');
501 = @('<Not Implemented>',
'Server does not support this operation');
502 = @('<Bad Gateway>', 'Invalid responses from another server/proxy.');
503 = @('<Service Unavailable>',
'The server cannot process the request due to a high load');
504 = @('<Gateway Timeout>',
'The gateway server did not receive a timely response');
505 = @('<HTTP Version Not Supported>', 'Cannot fulfill request.');
}
@ksavelev
Copy link
Author

If you want to find code by text:

PS> $http_status_codes.GetEnumerator() | ? {$_.Value -match "proxy" }

Name Value


305 {, You must use proxy specified in Location to access this , resource.}
502 {, Invalid responses from another server/proxy.}
407 {, You must authenticate with , this proxy before proc...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment