API RESTful desenvolvida em Golang. A API permite criar, ler, atualizar e deletar usuários em um banco de dados MySQL.
- Aquele famoso CRUD
- Criar Usuário: Adiciona um novo usuário ao banco de dados.
- Listar Usuários: Retorna todos os usuários cadastrados.
- Atualizar Usuário: Atualiza as informações de um usuário existente.
- Deletar Usuário: Remove um usuário do banco de dados.
- Golang: Linguagem de programação utilizada para desenvolver a API.
- MySQL: Banco de dados relacional utilizado para armazenar os dados dos usuários.
- Gorilla Mux: Pacote utilizado para roteamento das requisições HTTP.
- Go-SQL-Driver: Driver utilizado para conectar ao banco de dados MySQL.
- Godotenv: Pacote utilizado para carregar variáveis de ambiente a partir de um arquivo
.env
.
- Clone o repositório:
git clone https://github.com/gustavodesousalima/golang-api.git
cd golang-api
- Crie um arquivo
.env
na pasta app com as seguintes variáveis:
DATABASE="SUA_URL_DO_BANCO_DE_DADOS"
API_KEY="SUA_API_KEY"
- Instale as dependências:
go mod tidy
- Entrar no pasta cmd/app e execute o servidor:
cd cmd/app
go run main.go
- POST /users
- GET /users
- PUT /users/{id}
- DELETE /users/{id}
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL UNIQUE,
createdat varchar(255) NOT NULL,
active BOOLEAN DEFAULT TRUE,
);
- A API utiliza uma chave de API para autenticação. A chave deve ser enviada no cabeçalho Authorization de cada requisição.
curl -X GET "http://localhost:8080/users" \
-H "Authorization: SUA_API_KEY" \
-H "Content-Type: application/json" \