Neste guia, veremos como usar o plug-in E-mail para enviar o e-mail para onde você deseja no
seu aplicativo.
Neste exemplo, queremos receber um email quando um novo artigo for publicado e se ele
contiver palavrões.
O que queremos aqui é adicionar alguma lógica personalizada e chamar o serviço de email
quando um Comentário for criado através do terminal POST /comments.
Para poder fazer isso, primeiro você precisa entender alguns conceitos.
Quando você cria um tipo de conteúdo, ele gera uma API com a seguinte lista de endpoints
Cada um desses pontos de extremidade dispara uma ação do controlador. Aqui está a lista de
ações do controlador que existem por padrão quando um tipo de conteúdo é criado.
Se você verificar o arquivo do controlador da API gerada ./api/{content-
type}/controller/{Content-Type}.js, verá um arquivo vazio. Isso ocorre porque toda a lógica
padrão é gerenciada pelo Strapi. Mas você pode substituir essas ações por seu próprio código.
E é isso que faremos para adicionar nosso código personalizado.
Para manter o exemplo de código realmente fácil de seguir, teremos apenas um tipo de
conteúdo Comentário e omitiremos as relações Autor e Artigo.
Então, vamos criar um tipo de conteúdo de comentário com apenas um campo de texto
chamado content.
Quando o tipo de conteúdo for criado, permita a função de criação para a função Pública.
Para verificar se há bad words no comentário, usaremos o módulo do node de bad words Você
precisará instalá-lo em seu aplicativo.
Para personalizar a função que cria um comentário, teremos que substituir a função de criação.
Primeiro, para ver a diferença, vamos solicitar POST / comentar com isso é bom!
para o atributo content. Você verá que seu comentário foi criado com sucesso.
Agora vamos começar a personalização.
Atalho - ./api/comment/controller/Comment.js
Depois de salvar a nova função, vamos reiniciar a solicitação POST / comentário. Veremos
strapi como resposta.
Agora sabemos a função que precisamos atualizar. Vamos voltar à função original.
Na documentação do controlador, você encontrará a implementação padrão de todas as ações.
Isso o ajudará a substituir a lógica de criação.
Atalho - ./api/comment/controller/Comment.js
E agora a criação do comentário está de volta.
Queremos verificar se o conteúdo do comentário contém uma bad word
Nesse caso, queremos enviar um email usando o plug-in Email
Atalho - ./api/comment/controller/Comment.js
E tada, funcionou.