Trabalho para conclusão de curso Bootcamp Labenu 2022 feito a partir do Desafio back-end AMARO
Esta API permite a inserção de dados de produtos enviados em um arquivo JSON ou XML ao banco de dados. Esses dados podem ser pesquisados e filtrados por queries como "id", "name" ou "tags", ordenados por ordem crescente "ASC" ou descrescente "DESC"
1. Inserção de produtos
- Método 1:
POST - Caminho:
/products/new - Entrada: body json incluindo os dados do produto no formato:
{
"products": [
{
"id": number,
"name": string,
"tags": [string]
},
- Saída: "Produtos adicionados com sucesso" caso não haja um produco cadastrado com a mesma id ou erro em caso de duplicidade: "já há um produto cadastrado com a ID {product ID}: {product Name}"
- Método 2:
POST - Caminho:
/products/new/XML - Entrada: body XML incluindo os dados do produto no formato:
<products>
<element>
<id>number</id>
<name>string</name>
<tags>
<element>string</element>
<element>string</element>
</tags>
</element>
</products>,
- Saída: "Produtos adicionados com sucesso" caso não haja um produco cadastrado com a mesma id ou erro em caso de duplicidade: "já há um produto cadastrado com a ID {product ID}: {product Name}"
2. Busca por produtos
- Método:
GET - Caminho:
/products - Entrada: queries opcionais de search, sort, order e page
- Saída: um objeto 'products' que inclui uma lista com todos os produtos encontrados
- NodeJS
- TypeScript
- MySQL
- Knex
- Express
- Cors
- JWT
- Markdown
- Jest
Backend rodando na AWS ec2