- HTTP Referencia: https://tools.ietf.org/html/rfc7230
- endpoint
- resource
- HTTP verbs (get,post,put,delete,patch..)
- Status Code
- 200
- 300
- 400
- 500
- Criar banco mysql: echo create database curso_laravel_rest_2 | mysql -u root -p
- Instalar laravel: composer create-project --prefer-dist laravel/laravel^5.7
- Configurar .env com nome do banco,usuario e senha.
- Testar: php artisan serve
- Criar um nova rota em
routes\api.php
:// ja vem com api na frente Route:prefix('v1')->group( function(){ Route:get('/products','ProductsController@index'); // gera /api/v1/products })
- Criar rota para adicionar registros
// ja vem com api na frente Route:prefix('v1')->group( function(){ Route:get('/products','ProductsController@index'); // gera /api/v1/products Route:post('/products','ProductsController@store'); // gera /api/v1/products })
- Usar postman para inserir com metodo/verb POST
- Electron - Criar app desktop com html/css/js
- Criar rota para adicionar registros
// ja vem com api na frente Route:prefix('v1')->group( function(){ Route:get('/products','ProductsController@index'); // gera /api/v1/products Route:post('/products','ProductsController@store'); // gera /api/v1/products Route:update('/products/{product}','ProductsController@update'); // gera /api/v1/products Route:get('/products/{product}','ProductsController@show'); // gera /api/v1/products Route:delete('/products/{product}','ProductsController@destroy'); // gera /api/v1/products })
-
Criando requests validation
php artisan make:request ProductsRequest
-
Após importar Request no controller products e colocar seu alias como 'Request' Testando no Postman, precisa passar Headers http com Accept
application/json
ou X-Request-WithXMLHttpRequest
-
site: https://pt.stackoverflow.com/questions/385258/access-control-allow-origin-erro-com-xmlhttprequest
-
Plataforma utilizada pelo laravel para autenticação em apis RESTful
composer require laravel/passport
-
Tabelas utilizadas pelo passport
php artisan migrate
-
Geração de chaves do passport e sua instalação
php artisan passport:install e guardar as keys geradas
-
Incluir no Model User um trait
use Laravel\Passport\HasApiTokens class User { use HasApiToken ... }
-
Incluir novo autenticador em Providers/AuthServiceProvider
use Laravel\Passport\Passport
-
Rotas do passport no método boot() da classe acima.
Passport::routes();
-
Alterar guards da api para o Passport
guards > api > driver > 'passport'