Blog iugu

Aprenda a criar API com Strapi em Node.JS

Written by Redação iugu | 31/05/2022 03:00:00

Se você leu nossos artigos sobre API, já sabe que estas interfaces facilitam (e muito) a implementação de aplicações. Isso porque elas permitem que uma aplicação acesse funcionalidades de outra sem precisar conter em seu código a infraestrutura para aquela funcionalidade.

Mas, se a existência de APIs facilita a vida dos desenvolvedores, a criação de uma pode inspirar medo em muitos deles, que temem a complexidade ou a magnitude da tarefa.

Felizmente, hoje temos ferramentas que agilizam esse processo a tal ponto que é possível completá-lo numa questão de minutos. É o caso do Strapi.

Continue lendo este artigo para descobrir como essa ferramenta pode te ajudar a criar APIs rapidamente e sem estresse.

 

O que é Strapi

O Strapi é um Serviço de Gerenciamento de Conteúdo (Content Management Service, ou CMS, em inglês) open-source e headless. Ele permite ao usuário criar APIs de alta qualidade em Javascript, tudo através de uma interface gráfica do usuário, simples e direta.

O serviço permite otimizar o tempo de implementação de uma aplicação ao reduzir os esforços necessários para a construção de uma API. Apesar disso, não deixa de oferecer uma vasta gama de opções de personalização da aplicação conforme as necessidades do seu projeto.

O Strap item suporte a APIs RESTful e a GraphQL. Além disso, também é compatível com bancos de dados SQL e NoSQL.

 

Como criar uma API usando Strapi

Neste tutorial você aprenderá como construir uma API do zero utilizando o Strapi. O processo levará poucos minutos e ao final você terá uma API plenamente funcional e pronta para responder chamadas de outras aplicações.

Confira o passo a passo:

 

Requisitos de software

Para que o Strapi funcione corretamente, é necessário que você tenha instalada a versão 9 ou superior do Node.js no seu computador.

Além dele, é necessário ter instalada a versão 2.6 ou superior do MongoDB. O processo também pode ser reproduzido utilizando um container do Docker com o MongoDB instalado.

 

1. Instalação do Strapi

Após garantir que tem todos os pré-requisitos para o funcionamento do Strapi, é hora de baixá-lo e instalá-lo. Para isso, insira o seguinte comando em uma instância do Terminal:

npm install strapi@alpha -g

Após a conclusão, verifique a integridade da instalação usando o comando de consulta da versão do Strapi. Para isso, insira no Terminal o comando:

 strapi -v

Caso o retorno do comando seja o número da versão, você saberá que o Strapi foi instalado corretamente. Ele poderá então ser acessado através do path “strapi”.

 

Configuração

Após instalar o Strapi, é necessário configurá-lo. Suba a imagem do Docker com o MongoDB utilizando o comando:

docker run --name testemongo -p 27017:27017 -d mongo

Caso o MondoDB esteja instalado diretamente no seu computador, você pode subir o serviço localmente.

 

3. Criando a API

Após a etapa de configuração do Docker, chegamos ao momento da criação da API.

Insira no seu Terminal o seguinte comando, já nomeando o seu projeto:

strapi new ProjetoExemplo

O Strapi permitirá que você selecione algumas configurações básicas do seu projeto. Escolha o MongoDB como banco de dados principal e forneça as informações necessárias para conexão à instância.

 

4. Iniciando a aplicação

Para iniciar a aplicação, primeiro acesse a pasta onde está armazenado o projeto que você criou. Você pode fazer isso inserindo o seguinte comando no seu Terminal:

cd ProjetoExemplo

Agora inicie a aplicação utilizando o comando:

strapi start

Feito isso, basta acessar a aplicação. Para conexões locais, como será o seu caso se estiver seguindo este tutorial à risca, o endereço é:

http://localhost:1337/admin

 

5. Criando o usuário admin

No primeiro acesso à aplicação, você precisará criar uma conta de administrador. O Strapi pedirá que você informe um nome de usuário (username), senha (password), confirmação da senha (confirm password), e o seu email.

Após informar os dados, sua conta será criada e você terá acesso e controle sobre o painel de administração do serviço.

 

6. Criando entidades

Agora começaremos a construir nossa API. Começaremos criando a primeira entidade. Para isso, clique em Plugins, depois em Content Type Builder e por fim em Add Content Type Builder.

Na aba de configurações básicas, daremos à entidade o nome de Produto (no singular). Na aba de configurações avançadas, insira o nome Produtos (no plural).

Não esqueça de clicar no botão Save para gravar suas alterações.

 

7. Adicionando propriedades à entidade

Para atribuir propriedades à entidade que acabamos de criar, é necessário clicar no botão Add New Field, dentro da página da entidade criada — neste caso, Produto.

Após adicionar o novo campo, isto é, a nova propriedade da entidade, você poderá nomeá-la e definir seu tipo.

Neste tutorial, a primeira propriedade criada será chamada de Nome e será do tipo String. Na aba Advanced Settings, você poderá alterar configurações como a obrigatoriedade do campo e os limites de caracteres, dentre outras coisas.

Em seguida, adicionamos a segunda propriedade, que chamaremos de Preço e cujo tipo será Number. Este tipo tem subtipos, e para os fins deste tutorial escolheremos o subtipo Decimal na opção Number Format.

Esta propriedade também será de caráter obrigatório e contará com valores mínimos para a informação.

Por último, determinaremos um relacionamento entre cada produto e um usuário, isto é, atribuiremos um usuário a cada produto. Isso é feito escolhendo a opção Relation no menu exibido ao clicar em Add New Field.

Na aba Define Relation, informe a entidade com que se deseja relacionar o Produto e informe no campo Field Name a propriedade das entidades que determinam a relação. Depois, basta escolher o tipo de relação entre as entidades.

No caso do exemplo, Produto has and belongs to one User, ou seja, um Produto está associado a um usuário e pertence a ele.

 

8. Adicionando as entidades

Para adicionar um Produto, continuamos até a página Produtos e clicamos em Add New Produto.

Preencha as informações da Entry e clique em salvar para guardar o Produto criado.

 

9. Testando a API

Chega a hora de testar a API. Neste tutorial, o teste será realizado com o auxílio do Insomnia.

Faça login na aplicação para acessar seus endpoints. Para o teste, será necessário coletar o token JWT e inserí-lo no cabeçalho das requisições.

 

10. Configurando controles de acesso

Caso você deseje estabelecer controles de acesso a informações ou recursos, o procedimento é muito simples.

Você precisa acessar o painel administrativo e seguir até a seção Roles & Permissions.

Nessa tela, você poderá criar novas regras e editar as 3 regras padrões existentes, que já vêm pré-configuradas no projeto.

 

11. Salvando a API

Ao terminar suas alterações, basta clicar em salvar e testar sua API. Ela estará pronta e disponível em toda a sua completude para ser usada nos mais diversos projetos.

Com esse passo a passo em mãos, e com a ajuda da Strapi, fica muito mais fácil criar sua própria API, certo? Conta pra gente o que você achou!