An enum that provides additional support around HTTP status codes.
Based on Hypertext Transfer Protocol (HTTP) Status Code Registry
It provides constants for the defined HTTP status codes as well as helper
methods to easily identify the type of response.
NOTE: To use Status, you must explicitly import it with require "http/status"
Constants
SWITCHING_PROTOCOLS = 101
NON_AUTHORITATIVE_INFORMATION = 203
PROXY_AUTHENTICATION_REQUIRED = 407
PRECONDITION_FAILED = 412
UNSUPPORTED_MEDIA_TYPE = 415
RANGE_NOT_SATISFIABLE = 416
MISDIRECTED_REQUEST = 421
UNPROCESSABLE_ENTITY = 422
PRECONDITION_REQUIRED = 428
REQUEST_HEADER_FIELDS_TOO_LARGE = 431
UNAVAILABLE_FOR_LEGAL_REASONS = 451
INTERNAL_SERVER_ERROR = 500
SERVICE_UNAVAILABLE = 503
HTTP_VERSION_NOT_SUPPORTED = 505
VARIANT_ALSO_NEGOTIATES = 506
INSUFFICIENT_STORAGE = 507
NETWORK_AUTHENTICATION_REQUIRED = 511
Constructors
new(status_code :
Int32) : self
Create a new status instance with the given status code, or raise an
error if the status code given is not inside 100..999.
require "http/status"
HTTP::Status.new(100) # => HTTP::Status::CONTINUE
HTTP::Status.new(202) # => HTTP::Status::ACCEPTED
HTTP::Status.new(123) # => 123
HTTP::Status.new(1000) # raises ArgumentError
SourceInstance methods
accepted?
Returns true if this enum value equals ACCEPTED
Sourcealready_reported?
Returns true if this enum value equals ALREADY_REPORTED
Sourcebad_gateway?
Returns true if this enum value equals BAD_GATEWAY
Sourcebad_request?
Returns true if this enum value equals BAD_REQUEST
Sourceclient_error?
Returns true if the response status code is between 400 and 499.
require "http/status"
HTTP::Status::METHOD_NOT_ALLOWED.client_error? # => true
HTTP::Status::INTERNAL_SERVER_ERROR.client_error? # => false
Sourcecode
Returns the number that represents the HTTP status code.
require "http/status"
status = HTTP::Status::NO_CONTENT
status.code # => 204
Sourceconflict?
Returns true if this enum value equals CONFLICT
Sourcecontinue?
Returns true if this enum value equals CONTINUE
Sourcecreated?
Returns true if this enum value equals CREATED
Sourcedescription
Returns the default status description of the given HTTP status code.
require "http/status"
HTTP::Status.new(123).description # => nil
HTTP::Status::NO_CONTENT.description # => "No Content"
HTTP::Status::METHOD_NOT_ALLOWED.description # => "Method Not Allowed"
HTTP::Status::INTERNAL_SERVER_ERROR.description # => "Internal Server Error"
Sourceearly_hints?
Returns true if this enum value equals EARLY_HINTS
Sourceexpectation_failed?
Returns true if this enum value equals EXPECTATION_FAILED
Sourcefailed_dependency?
Returns true if this enum value equals FAILED_DEPENDENCY
Sourceforbidden?
Returns true if this enum value equals FORBIDDEN
Sourcefound?
Returns true if this enum value equals FOUND
Sourcegateway_timeout?
Returns true if this enum value equals GATEWAY_TIMEOUT
Sourcegone?
Returns true if this enum value equals GONE
Sourcehttp_version_not_supported?
Returns true if this enum value equals HTTP_VERSION_NOT_SUPPORTED
Sourceim_a_teapot?
Returns true if this enum value equals IM_A_TEAPOT
Sourceim_used?
Returns true if this enum value equals IM_USED
Sourceinsufficient_storage?
Returns true if this enum value equals INSUFFICIENT_STORAGE
Sourceinternal_server_error?
Returns true if this enum value equals INTERNAL_SERVER_ERROR
Sourcelength_required?
Returns true if this enum value equals LENGTH_REQUIRED
Sourcelocked?
Returns true if this enum value equals LOCKED
Sourceloop_detected?
Returns true if this enum value equals LOOP_DETECTED
Sourcemethod_not_allowed?
Returns true if this enum value equals METHOD_NOT_ALLOWED
Sourcemisdirected_request?
Returns true if this enum value equals MISDIRECTED_REQUEST
Sourcemoved_permanently?
Returns true if this enum value equals MOVED_PERMANENTLY
Sourcemulti_status?
Returns true if this enum value equals MULTI_STATUS
Sourcemultiple_choices?
Returns true if this enum value equals MULTIPLE_CHOICES
Sourcenetwork_authentication_required?
Returns true if this enum value equals NETWORK_AUTHENTICATION_REQUIRED
Sourceno_content?
Returns true if this enum value equals NO_CONTENT
Sourcenot_acceptable?
Returns true if this enum value equals NOT_ACCEPTABLE
Sourcenot_extended?
Returns true if this enum value equals NOT_EXTENDED
Sourcenot_found?
Returns true if this enum value equals NOT_FOUND
Sourcenot_implemented?
Returns true if this enum value equals NOT_IMPLEMENTED
Sourcenot_modified?
Returns true if this enum value equals NOT_MODIFIED
Sourceok?
Returns true if this enum value equals OK
Sourcepartial_content?
Returns true if this enum value equals PARTIAL_CONTENT
Sourcepayload_too_large?
Returns true if this enum value equals PAYLOAD_TOO_LARGE
Sourcepayment_required?
Returns true if this enum value equals PAYMENT_REQUIRED
Sourcepermanent_redirect?
Returns true if this enum value equals PERMANENT_REDIRECT
Sourceprecondition_failed?
Returns true if this enum value equals PRECONDITION_FAILED
Sourceprecondition_required?
Returns true if this enum value equals PRECONDITION_REQUIRED
Sourceprocessing?
Returns true if this enum value equals PROCESSING
Sourceproxy_authentication_required?
Returns true if this enum value equals PROXY_AUTHENTICATION_REQUIRED
Sourcerange_not_satisfiable?
Returns true if this enum value equals RANGE_NOT_SATISFIABLE
Sourceredirection?
Returns true if the response status code is between 300 and 399.
require "http/status"
HTTP::Status::SWITCH_PROXY.redirection? # => true
HTTP::Status::INTERNAL_SERVER_ERROR.redirection? # => false
Sourcerequest_timeout?
Returns true if this enum value equals REQUEST_TIMEOUT
Sourcereset_content?
Returns true if this enum value equals RESET_CONTENT
Sourcesee_other?
Returns true if this enum value equals SEE_OTHER
Sourceserver_error?
Returns true if the response status code is between 500 and 599.
require "http/status"
HTTP::Status::INTERNAL_SERVER_ERROR.server_error? # => true
HTTP::Status::METHOD_NOT_ALLOWED.server_error? # => false
Sourceservice_unavailable?
Returns true if this enum value equals SERVICE_UNAVAILABLE
Sourcesuccess?
Returns true if the response status code is between 200 and 299.
require "http/status"
HTTP::Status::NO_CONTENT.success? # => true
HTTP::Status::INTERNAL_SERVER_ERROR.success? # => false
Sourceswitch_proxy?
Returns true if this enum value equals SWITCH_PROXY
Sourceswitching_protocols?
Returns true if this enum value equals SWITCHING_PROTOCOLS
Sourcetemporary_redirect?
Returns true if this enum value equals TEMPORARY_REDIRECT
Sourcetoo_many_requests?
Returns true if this enum value equals TOO_MANY_REQUESTS
Sourceunauthorized?
Returns true if this enum value equals UNAUTHORIZED
Sourceunavailable_for_legal_reasons?
Returns true if this enum value equals UNAVAILABLE_FOR_LEGAL_REASONS
Sourceunprocessable_entity?
Returns true if this enum value equals UNPROCESSABLE_ENTITY
Sourceupgrade_required?
Returns true if this enum value equals UPGRADE_REQUIRED
Sourceuri_too_long?
Returns true if this enum value equals URI_TOO_LONG
Sourceuse_proxy?
Returns true if this enum value equals USE_PROXY
Sourcevariant_also_negotiates?
Returns true if this enum value equals VARIANT_ALSO_NEGOTIATES
Source