Criar problemas manualmente pode ser demorado. Bate-papo do Copiloto permite criar problemas a partir de linguagem natural e preenche automaticamente o título, o corpo, os rótulos e outros metadados com base no seu comando.
Cenário de exemplo
Você está trabalhando em um serviço de API e precisa adicionar a validação do lado do servidor ao createUser endpoint. Em vez de redigir a questão manualmente, use Bate-papo do Copiloto para gerar uma descrição detalhada da mesma, que inclui um exemplo de implementação do middleware de validação.
O trecho de código a seguir mostra a implementação atual da createUser rota, antes da adição da validação.
// Route
app.post('/users', validateCreateUser, (req, res) => {
const { username, email } = req.body;
// Simulate user creation
res.status(201).json({ message: 'User created', user: { username, email } });
});
Solicitação de exemplo
In octo-org/octo-repo, create an issue to add server-side validation for the createUser API endpoint. Include an example of how to validate the request body using an existing middleware pattern. Label it with "backend" and "enhancement".
Resposta de exemplo
Resposta: Esta é um exemplo.
Quando você envia o prompt, Bate-papo do Copiloto gera um problema de rascunho com base na sua descrição e inclui um trecho de código. Você pode examinar e editar o rascunho antes de criar o issue.
## Problem
The `createUser` API endpoint currently lacks robust server-side validation for incoming requests. To ensure data integrity and security, we should validate the request body before proceeding with user creation.
**Current API endpoint:**
// Route
app.post('/users', validateCreateUser, (req, res) => {
const { username, email } = req.body;
// Simulate user creation
res.status(201).json({ message: 'User created', user: { username, email } });
});
## Proposal
- Add server-side validation for the request body using the existing middleware pattern.
- Ensure required fields (`username`, `email`) are present and valid.
- Return a 400 Bad Request response if validation fails.
**Example (middleware pattern):**
function validateCreateUser(req, res, next) {
const { username, email } = req.body;
if (!username || !email) {
return res.status(400).json({ error: 'Username and email are required.' });
}
// Additional validation logic here
next();
}
app.post('/users', validateCreateUser, (req, res) => {
// ...
});
## Acceptance Criteria
- Server-side validation middleware is added to the `createUser` endpoint.
- Request body is properly validated.
- Appropriate error responses are returned for invalid requests.