Esta é uma API Restful desenvolvida em .NET Core e MySQL, projetada para fornecer dados relacionados a produtos em um e-commerce.
Certifique-se de ter o .NET Core SDK instalado em sua máquina.
-
Clone este repositório:
git clone https://github.com/tallesvini/Api_Products_Ecommerce.git
-
Acesse o diretório do projeto:
cd nome-do-repositorio
-
Abra o arquivo
program.cs
e configure as informações de conexão com o banco de dados MySQL:"ConnectionStrings": { "DefaultConnection": "Server=localhost;initial catalog=ProductsApi;Uid=root" },
-
Execute as migrações para criar as tabelas no banco de dados:
dotnet ef database update
-
Inicie o servidor:
dotnet run
A API estará disponível em http://localhost:5000
.
- .NET Core SDK 3.1 ou superior.
- Realize seu registro no endpoint:
{
"userName": "string",
"email": "string",
"password": "string",
"confirmPassword": "string"
}
- Realize o login no endpoint:
{
"userName": "string",
"email": "string",
"password": "string",
"confirmPassword": "string"
}
- O token irá ser gerado.
- Com o Swagger ativado, vá na parte superior "Authorize" e adicione: Bearer [Seu Token JWT]
- Endpoint serão liberados.
Retorna todos os produtos disponíveis no e-commerce.
Exemplo de resposta:
{
"id": 1,
"isAvailableOnFactory": true,
"product": {
"id": 0,
"name": "string",
"sku": "string",
"description": "string",
"size": "string",
"color": "string",
"gender": 0,
"price": 0,
"categoryId": 1
}
}
Retorna um produto específico com base no ID fornecido.
Exemplo de resposta:
{
"id": 1,
"isAvailableOnFactory": true,
"product": {
"id": 0,
"name": "string",
"sku": "string",
"description": "string",
"size": "string",
"color": "string",
"gender": 0,
"price": 0,
"categoryId": 1
}
}
Retorna o log específico de um produto.
Exemplo de resposta:
{
"id": 1,
"isAvailableOnFactory": true,
"product": {
"id": 0,
"name": "string",
"sku": "string",
"description": "string",
"size": "string",
"color": "string",
"gender": 0,
"price": 0,
"categoryId": 1
}
}
Retorna todos os produtos.
Exemplo de requisição:
{
"id": 1,
"name": "string",
"sku": "string",
"description": "string",
"size": "string",
"color": "string",
"gender": 0,
"price": 0,
"categoryId": 1
}
Retorna determinado produto através do ID fornecido.
Exemplo de requisição:
{
"id": 1,
"name": "string",
"sku": "string",
"description": "string",
"size": "string",
"color": "string",
"gender": 0,
"price": 0,
"categoryId": 1
}
Realiza a inclusão de um novo produto.
Exemplo de requisição:
{
"id": 1,
"name": "string",
"sku": "string",
"description": "string",
"size": "string",
"color": "string",
"gender": 0,
"price": 0,
"categoryId": 1
}
Realiza a edição de um produto atravéz do ID fornecido.
Exemplo de requisição:
{
"id": 1,
"name": "string",
"sku": "string",
"description": "string",
"size": "string",
"color": "string",
"gender": 0,
"price": 0,
"categoryId": 0
}
Remove um produto específico com base no ID fornecido.
Retorna todas as categorias.
Exemplo de requisição:
{
"id": 1,
"name": "string",
"description": "string",
"imageUrl": "string"
}
Retorna determinada categoria através do ID fornecido.
Exemplo de requisição:
{
"id": 1,
"name": "string",
"description": "string",
"imageUrl": "string"
}
Realiza a inclusão de uma nova categoria.
Exemplo de requisição:
{
"id": 1,
"name": "string",
"description": "string",
"imageUrl": "string"
}
Realiza a edição de uma categoria atravéz do ID fornecido.
Exemplo de requisição:
{
"id": 1,
"name": "string",
"description": "string",
"imageUrl": "string"
}
Remove uma categoria específica com base no ID fornecido.
Dado a configuração, somente URLs/URIs que são de mesma origem terão acesso aos endpoints de persistência.
Se você deseja contribuir para este projeto, siga as etapas abaixo:
- Faça um fork deste repositório e clone-o em sua máquina local.
- Crie um novo branch para suas alterações:
git checkout -b minha-branch
. - Realize as alterações desejadas e commit-as:
git commit -m 'Minhas alterações'
. - Envie suas alterações para o branch principal do repositório forkado:
git push origin minha-branch
. - Abra um pull request no repositório original, descrevendo as alterações propostas.
Este projeto está licenciado sob a MIT License.