PhpDev.App
Tony133/laravel-api-rest

Tony133/laravel-api-rest

Stars: 207

Forks: 89

Pull Requests: 23

Issues: 10

Watchers: 10

Last Updated: 2023-04-19 21:00:53

Simple example of a API REST with Laravel 9.x

License: MIT License

Languages: PHP, Shell, Blade, JavaScript

Laravel Api Rest

Build Status

Simple example of a REST API with Laravel 9.x

Install with Composer

    $ curl -s http://getcomposer.org/installer | php
    $ php composer.phar install or composer install

Set Environment

    $ cp .env.example .env

Set the application key

   $ php artisan key:generate

Run migrations and seeds

   $ php artisan migrate --seed

Getting with Curl

    $ curl -H 'content-type: application/json' -H 'Accept: application/json' -v -X GET http://127.0.0.1:8000/api/books
    $ curl -H 'content-type: application/json' -H 'Accept: application/json' -v -X GET http://127.0.0.1:8000/api/books/:id
    $ curl -H 'content-type: application/json' -H 'Accept: application/json' -v -X POST -d '{"title":"Foo bar","price":"19.99","author":"Foo author","editor":"Foo editor"}' http://127.0.0.1:8000/api/books
    $ curl -H 'content-type: application/json' -H 'Accept: application/json' -v -X PUT -d '{"title":"Foo bar","price":"19.99","author":"Foo author","editor":"Foo editor"}' http://127.0.0.1:8000/api/books/:id
    $ curl -H 'content-type: application/json' -H 'Accept: application/json' -v -X DELETE http://127.0.0.1:8000/api/books/:id

Pagination with Curl

    $ curl -H 'content-type: application/json' -H 'Accept: application/json' -v -X GET http://127.0.0.1:8000/api/books?page=:number_page  -H 'Authorization:Basic username:password or email:password'

User Authentication with Curl with middleware auth.basic.username

    $ curl -H 'content-type: application/json' -H 'Accept: application/json' -v -X GET http://127.0.0.1:8000/api/books  -H 'Authorization:Basic username:password'

User Authentication with Curl using middleware auth.basic

    $ curl -H 'content-type: application/json' -H 'Accept: application/json' -v -X GET http://127.0.0.1:8000/api/books  -H 'Authorization:Basic email:password'

Run App in container Docker with Laravel Sail

docker run --rm \
    -u "$(id -u):$(id -g)" \
    -v $(pwd):/opt \
    -w /opt \
    laravelsail/php81-composer:latest \
    composer install --ignore-platform-reqs

Run Start Application with Laravel Sail

  ./vendor/bin/sail up

OPEN ISSUES

See all

RELEASES

See all