Questão nº 58
Questão de Tecnologia da Informação · FCC TRT20 2024 (nº 58)
Considere o seguinte código de exemplo de um webhook em Node.js:
```javascript
const express = require('express');
const app = express();
app.use(express.json());
__I__ => {
console.log('Webhook received:', req.body);
res.status(200).send('Webhook received successfully');
});
app.listen(3000, () => {
console.log('Server is listening on port 3000');
});
```
Para receber e processar requisições http `post` para o endpoint `/webhook` é necessário que a lacuna I seja corretamente preenchida por
- A`msg.post('/webhook', (req, send)`
- B`app.post('/webhook,(req, http)`
- C`post.msg('/webhook',(http, send)`
- D`msg.post('/webhook', (req, res)`
- E`app.post('/webhook', (req, res)` (alternativa correta)
Resposta comentada
Gabarito Alternativa E
Um webhook é uma forma de um sistema notificar outro sobre eventos específicos, enviando uma requisição HTTP POST para um endereço pré-definido (o endpoint). No Node.js, o framework Express é usado para criar esses endpoints e processar as requisições.
- (A) Incorreta: O objeto principal do Express é
app, nãomsg. Além disso, os parâmetros da função de callback sãoreq(requisição) eres(resposta), nãosend. - (B) Incorreta: Há um erro de sintaxe (parêntese faltando) e o segundo parâmetro da função de callback deve ser
res, nãohttp. - (C) Incorreta: A sintaxe
post.msgestá incorreta; o métodoposté chamado diretamente no objetoappdo Express. Os parâmetroshttpesendtambém estão errados. - (D) Incorreta: Esta é a alternativa mais tentadora. Embora os parâmetros
(req, res)estejam corretos para a função de callback do Express, o métodopostdeve ser chamado no objetoapp(a instância do Express), e não em um objetomsgnão definido. A armadilha aqui é a correção dos parâmetros da função, que desvia a atenção do objeto incorreto (msg) que está chamando o método. - (E) Correta: Esta alternativa preenche corretamente a lacuna.
app.posté o método do Express para definir um manipulador para requisições HTTPPOST,/webhooké o caminho do endpoint, e(req, res)são os objetos padrão para acessar a requisição e enviar a resposta, respectivamente, dentro da função de callback.
Fonte: FCC TRT20 2024 Técnico Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 004). Reproduzida para fins de estudo.