Skip to content

laratoolbox/responder

Repository files navigation

Laravel Responder

Easily respond to api requests.

Requirement

Laravel >= 5.5

Installation

You can install the package via composer:

$ composer require laratoolbox/responder

Usage

After installation, you can use helper responder function.

return responder()
        ->addHeader('X-Secret1', 'secret1')
        ->addHeader('X-Secret2', 'secret2')
        ->addHeader('X-Secret3', 'secret3')
        ->setData(\App\Models\User::select('id', 'name')->find(1))
        ->addExtraData('custom-key', 'custom-value')
        ->send();

See response below:

HTTP/1.1 200 OK
Content-Type: application/json
X-Secret1: secret1
X-Secret2: secret2
X-Secret3: secret3

{
    "code": 0,
    "message": null,
    "data": {
        "id": 1,
        "name": "Semih ERDOGAN"
    },
    "custom-key": "custom-value"
}

Also, you have ResponderException that you can throw it any time required.

throw new \LaraToolbox\Responder\Exceptions\ResponderException(
    \LaraToolbox\Responder\ResponseCodes::ERROR,
    $customData = [1,2,3]
);

See response below:

HTTP/1.1 200 OK
Content-Type: application/json

{
    "code": 120,
    "message": "An error occurred",
    "data": [
        1,
        2,
        3
    ]
}

All methods that responder has.

send

  • Parameter null|mixed $data (if set calls setData method behind the scenes)

setHttpStatusCode

  • Parameter int $statusCode

setResponseMeta

  • Parameter array $responseMeta

setResponseCode

  • Parameter int $responseCode

setResponseMessage

  • Parameter string $responseMessage

setData

  • Parameter mixed $data

addExtraData

  • Parameter string $key
  • Parameter mixed $value

addHeader

  • Parameter string $key
  • Parameter string|integer|numeric $value

Testing

// TODO:

Changelog

Please see CHANGELOG for more information what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email [email protected] instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.

About

Easily send response to api requests for laravel.

Topics

Resources

License

Stars

Watchers

Forks

Languages