Skip to content

Latest commit

 

History

History
206 lines (144 loc) · 13.5 KB

README.md

File metadata and controls

206 lines (144 loc) · 13.5 KB

ServeRest

Servidor REST para estudo de testes de API

serverest version Docker Pulls Mutation test score serverest total downloads

Código de conduta | Como contribuir | Histórico de alterações | Patrocinadores

Logo do ServeRest

ServeRest permite o estudo de:

  • Verbos GET, POST, PUT e DELETE com persistência de dados
  • Autenticação no header
  • Query string
  • Teste de schema json

Ambientes disponíveis

Online em serverest.dev
Texto serverest.dev
Local com NPM

Logo do NPM
Local com docker
Logo do Docker

Print do ServeRest iniciado no terminal

Consumindo o ServeRest

O ServeRest está disponível de forma online, no npm e no docker.

Todas essas opções possuem as mesmas rotas, regras, dados pré-cadastrados e documentação. Escolha a melhor opção para você.

No ambiente online os dados cadastrados são removidos diariamente, enquanto que no local basta reiniciar o ServeRest.

Prefira a opção de ambiente local caso precise que os dados não sejam alterados por outro usuário.

Online 7-day uptime 100.00%

Acesse https://serverest.dev para visualizar a documentação e as rotas disponíveis.

Essa é a melhor opção para quem não possui NPM e Docker na máquina ou não quer preocupar em gerenciar ambiente.

A base de dados volta ao estado original diariamente às 3h.

O ServeRest online possui monitoramento constante do status e tempo de atividade para garantir que esteja sempre disponível. Acesse ServeRest Status para ver detalhes do uptime.

Localmente com NPM

Execute o seguinte comando no terminal:

npx serverest@latest
Abra para ver detalhes de configuração do ServeRest com NPM

Configuração

Para visualizar as configurações que são possíveis de serem feitas execute o comando:

npx serverest -h

Informação de opções e exemplos fornecidos no terminal

Segurança (--nosec)

Por default, o ServeRest irá fazer as seguintes alterações no cabeçalho, que podem ser desabilitadas com npx serverest --nosec:

Cabeçalhos adicionados:

  • Strict-Transport-Security: max-age=15552000; includeSubDomains
  • X-Content-Type-Options: nosniff
  • X-DNS-Prefetch-Control: off
  • X-Download-Options: noopen
  • X-Frame-Options: SAMEORIGIN
  • X-XSS-Protection: 1; mode=block

Cabeçalho removido:

  • X-Powered-By: Express

Utilize esse comportamento nos seus testes, validando a presença/ausência desses cabeçalhos.

Para saber mais leia o checklist de segurança de API


Localmente com docker

Execute o seguinte comando no terminal:

docker run -p 3000:3000 paulogoncalvesbh/serverest:latest

Para visualizar as configurações que são possíveis de serem feitas execute o comando:

docker run -p 3000:3000 paulogoncalvesbh/serverest:latest --help

Executando versão específica

Em ambos os comandos de subida de ambiente local será utilizado a última versão disponível. Caso queira usar uma versão específica basta substituir o latest pela versão desejada.

Você pode encontrar as versões disponíveis na lista de tags no Docker Hub e na lista de versões do NPM.

Exemplos de automação

Os repositórios abaixo são exemplos de automação com boas práticas e que consome o ServeRest.

Badge Badge ServeRest

[![Badge ServeRest](https://img.shields.io/badge/API-ServeRest-green)](https://github.com/ServeRest/ServeRest/)

Patrocinadores

Empresas ($15+/mês)

Sua empresa usa o ServeRest? Pergunte ao seu gerente ou equipe de marketing se sua empresa estaria interessada em apoiar este projeto e ter os seguintes serviços:

  1. Subdomínio próprio (nome-escolhido.serverest.dev)
  2. Acesso a todas as requests e respostas feitas nos últimos 7 dias no subdomínio

Apoiador individual - Open Collective

Individuais

Achou o projeto útil? Faça doação única ou mensal a partir de 1 dólar e ajude a pagar o domínio, a hospedagem e a manutenção de https://serverest.dev.

Apoiador individual - Open Collective

Todos os patrocinadores anteriores e atuais podem ser vistos no Open Collective do ServeRest.

Contribuidores ✨

Veja aqui como você pode contribuir. Contribuições de qualquer tipo são bem-vindas!


Leandro Muto

📖 🚇

Felipe Rodrigues

🚇

Lucas Amaral

📢 🐛 📖

lucas.fraga

🤔 🐛

bruno batista

🤔

Elias Reis

🚧 🚇

gabriel-pinheiro

💻 🤔

Rafael Gomes

🚇

Diego Bandeira

🚇

Maximiliano Alves

📢

Murilo Maia

💻

Empresas que utilizam o ServeRest

Logo da empresa Globo.com Logo da TOTVS Logo da Noesis Logo da Accenture
Logo da empresa Trybe Logo da Ailos Logo da Ânima Educação