Especificando o status code em uma resposta


Ao criar uma API é fundamental utilizar corretamente o Status Code HTTP para notificar o front-end sobre a situação das requisições enviadas e assim ele consiga responder ao usuário de forma precisa.

import http from 'node:http'
 
const users = []
 
const server = http.createServer((request, response) => {
    const { method, url } = request
    
    if (method === 'GET' && url === '/users') {
        return response
            .setHeader('Content-type', 'application/json')
            .end(JSON.stringify(users))
    }
 
    if (method === 'POST' && url === '/users') {
        users.push({
            id: 1,
            name: 'John Doe',
            email: 'johndoe@example.com'
        })
        return response.writeHead(201).end('Criação de usuário')
    }
 
    return response.writeHead(404).end('Not found')
})
 
server.listen(3000)

No caso do método POST e URL /users, é utilizado o código de status 201, que significa “Created”. Esse código é utilizado para indicar que a requisição foi bem-sucedida e resultou na criação de um novo recurso, que é o caso da criação de um novo usuário no array users. O método writeHead(201) define o cabeçalho da resposta com o código de status 201, indicando que o recurso foi criado com sucesso, seguido pelo método end('Criação de usuário') para enviar uma mensagem de confirmação ao cliente.

No caso de qualquer outra requisição que não corresponda às condições anteriores, é utilizado o código de status 404, que significa “Not Found”. Esse código é utilizado para indicar que o servidor não encontrou o recurso solicitado. O método writeHead(404) define o cabeçalho da resposta com o código de status 404, indicando que o recurso não foi encontrado, seguido pelo método end('Not found') para enviar uma mensagem de erro ao cliente.

Referências