GithubHelp home page GithubHelp logo

bookstoreapi's Introduction

API BookStore

Teste em Laravel.

php: 8.1
laravel: 10


Usuário default para autenticação do JWT após rodar as seeds

email: [email protected]
password: password

Iniciando

Clone o projeto, usando o comando abaixo (usando HTTPS):

git clone https://github.com/RuanSilva6721/BookStoreApi.git

Depois de clonar, acesse o repositório e instale as dependências com os comandos abaixo (para isso, utilize o Composer ):

composer install

Após instalar as dependências, duplique o arquivo .env.example e renomeie um deles para .env.

Gere uma nova chave da aplicação:

php artisan key:generate

Altere as configurações no arquivo .env para que o projeto se conecte ao banco de dados.

Execute o comando abaixo para que as tabelas sejam criadas no banco de dados:

php artisan migrate

Inicie o servidor da aplicação com o comando:

php artisan serve

Para ver o projeto em execução, acesse http://localhost:8000 .

Caso queira adicionar dados fictícios:

php artisan db:seed & php artisan db:seed --class=BookStoreSeeder

Caso queira fazer testes unitário e de integração:

php artisan test

Caso queira rodar em Docker, utilize o comando:

Inicie o Docker em sua máquina e depois execute para subir o container da aplicação e subir o db postgres:

docker-compose up -d

Veja se o container da aplicação e o db postgres estão de pé:

docker ps

Caso não, execute:

docker-compose restart

Para ver o projeto em execução, acesse http://localhost:9003 .

Você deve mudar a conexão do banco no .env para o banco de sua preferência. Eu adicionei um container como banco PostgreSQL:

DB_CONNECTION=pgsql
DB_HOST=db
DB_PORT=5432
DB_DATABASE=books
DB_USERNAME=RuanFelipe
DB_PASSWORD=password

Para acessar o container da aplicação, execute:

docker-compose exec -it [container da aplicação] bash

Instale as dependências com os comandos abaixo:

composer install

Execute o comando abaixo para que as tabelas sejam criadas no banco de dados:

php artisan migrate

Caso queira adicionar dados fictícios:

php artisan db:seed & php artisan db:seed --class=BookStoreSeeder

Caso queira fazer testes unitários e de integração:

php artisan test

Rotas

A API disponibiliza as seguintes rotas:

  • GET /api/BookStore: Retorna a lista de todas os livros cadastrados.
  • GET /api/BookStore/{id}: Retorna os detalhes de um livro de específico.
  • POST /api/BookStoreCreate: Cria um novo registro de livro.
  • PUT /api/BookStore/{id}: Atualiza um livro existente.
  • DELETE /api/BookStore/{id}: Remove um livro existente.

Como fazer a Autenticação:

  1. Rode o seguinte comando para adicionar dados fictícios ao banco de dados:
php artisan db:seed & php artisan db:seed --class=BookStoreSeeder
  1. Acesse a rota de login com o email e senha, em seguida, pegue o token que é retornado na resposta.

Login

  1. Para utilizar as rotas autenticadas, inclua o token no cabeçalho das requisições. É importante adicionar o prefixo 'Bearer' antes do token, como mostrado na imagem abaixo:

Header

Construído com

BookStoreApi

bookstoreapi's People

Contributors

ruansilva6721 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.