The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Mojo::HTTPStatus - Readable HTTP status codes

SYNOPSIS

    use Mojo::HTTPStatus qw(CREATED I_M_A_TEAPOT);

    sub create {
        my $self = shift();

        my $body = ...;

        return $self->render(json => $body, status => CREATED);
    }

    sub another_action {
        my $self = shift();

        ...

        return $self->render(text => 'Ooops' status => I_M_A_TEAPOT);
    }

DESCRPTION

The module exports a list of readable constants for HTTP status code. For more descriptions of the codes please visit https://httpstatuses.com/

CONSTANTS

1×× Informational

    CONTINUE                            100
    SWITCHING_PROTOCOLS                 101
    PROCESSING                          102

2×× Success

    OK                                  200
    CREATED                             201
    ACCEPTED                            202
    NON_AUTHORITATIVE_INFORMATION       203
    NO_CONTENT                          204
    RESET_CONTENT                       205
    PARTIAL_CONTENT                     206
    MULTI_STATUS                        207
    ALREADY_REPORTED                    208
    IM_USED                             226

3×× Redirection

    MULTIPLE_CHOICES                    300
    MOVED_PERMANENTLY                   301
    FOUND                               302
    SEE_OTHER                           303
    NOT_MODIFIED                        304
    USE_PROXY                           305
    TEMPORARY_REDIRECT                  307
    PERMANENT_REDIRECT                  308

4×× Client Error

    BAD_REQUEST                         400
    UNAUTHORIZED                        401
    PAYMENT_REQUIRED                    402
    FORBIDDEN                           403
    NOT_FOUND                           404
    METHOD_NOT_ALLOWED                  405
    NOT_ACCEPTABLE                      406
    PROXY_AUTHENTICATION_REQUIRED       407
    REQUEST_TIMEOUT                     408
    CONFLICT                            409
    GONE                                410
    LENGTH_REQUIRED                     411
    PRECONDITION_FAILED                 412
    PAYLOAD_TOO_LARGE                   413
    REQUEST_URI_TOO_LONG                414
    UNSUPPORTED_MEDIA_TYPE              415
    REQUESTED_RANGE_NOT_SATISFIABLE     416
    EXPECTATION_FAILED                  417
    I_M_A_TEAPOT                        418
    MISDIRECTED_REQUEST                 421
    UNPROCESSABLE_ENTITY                422
    LOCKED                              423
    FAILED_DEPENDENCY                   424
    UPGRADE_REQUIRED                    426
    PRECONDITION_REQUIRED               428
    TOO_MANY_REQUESTS                   429
    REQUEST_HEADER_FIELDS_TOO_LARGE     431
    CONNECTION_CLOSED_WITHOUT_RESPONSE  444
    UNAVAILABLE_FOR_LEGAL_REASONS       451
    CLIENT_CLOSED_REQUEST               499

5×× Server Error

    INTERNAL_SERVER_ERROR               500
    NOT_IMPLEMENTED                     501
    BAD_GATEWAY                         502
    SERVICE_UNAVAILABLE                 503
    GATEWAY_TIMEOUT                     504
    HTTP_VERSION_NOT_SUPPORTED          505
    VARIANT_ALSO_NEGOTIATES             506
    INSUFFICIENT_STORAGE                507
    LOOP_DETECTED                       508
    NOT_EXTENDED                        510
    NETWORK_AUTHENTICATION_REQUIRED     511
    NETWORK_CONNECT_TIMEOUT_ERROR       599

AUTHOR

Tudor Marghidanu tudor@marghidanu.com

COPYRIGHT AND LICENSE

Copyright (C) 2019, Tudor Marghidanu.

This program is free software, you can redistribute it and/or modify it under the terms of the Artistic License version 2.0.