Projeto realizado para atender os requisitos do bootcamp da Eduzz oferecido pela Digital Innovation One.
Para instalar e rodar o Encurtador de URL é necessário seguir os seguintes passos:
-
Acesse o link do repositório no Github, Encurtador de URL;
-
Copie o link (aconselhável utilizar o SSH) para clonar o repositório para sua máquina:
-
$ git clone [email protected]:paulomellodev/url_shortener.git
-
-
Após baixar o repositório, entre na pasta:
-
$ cd url_shortener
-
-
Para instalar todas as dependências necessárias, basta rodar o comando abaixo:
-
$ yarn
-
-
Renomeie o arquivo
.env.example
para.env
e altere as variáveis de ambiente que constam no arquivo de acordo com sua configuração:-
PORT="Número da porta" DATABASE_URL="URL do Database" API_URL="URL da API, a porta da API deve ser a mesma da variável 'PORT'"
-
-
Estamos utilizando o MongoDB, sendo assim, será necessário alguma familiaridade com este banco de dados.
-
A partir daqui, seu projeto está pronto para rodar.
Para rodar a aplicação, é necessário utilizar o comando:
$ yarn dev
A aplicação rodará na rota: http://localhost:PORT/
Para testar a aplicação, é necessário utilizar um API Client, como o Insomnia, Thunder Client ou similares.
Criará e retornará a url encurtada
-
Reponse: status code -> 201
Exemplo do Retorno da API com dados:
{ "_id": "623360eff383d2cf8c2d30c8", "hash": "yhq31_MLs", "originalURL": "https://github.com/paulomellodev/url_shortener", "shortUrl": "http://localhost:3000/yhq31_MLs", "__v": 0 }
-
Reponse: status code -> 401 (Forbidden)
Exemplo do Retorno da API com dados:
{ "_id": "623360eff383d2cf8c2d30c8", "hash": "yhq31_MLs", "originalURL": "https://github.com/paulomellodev/url_shortener", "shortUrl": "http://localhost:3000/yhq31_MLs", "__v": 0 }
Redirecionará para a página original caso o HASH fornecido seja encontrada.
-
Response: status code -> 302 Exemplo da rota - /623360eff383d2cf8c2d30c8:
-
Response: status code -> 404 (Not Found) Exemplo da rota - /623360eff3c8:
{ "error": "URL not found" }
- NodeJS
- MongoDB
- Typescript
- Express