Configurando o Swagger com Suporte a UTF-8 no NestJS

Configurando o Swagger com Suporte a UTF-8 no NestJS

Pré-requisitos

Antes de seguir este guia, certifique-se de que você tenha o NestJS e o Swagger configurados em seu projeto. Se você ainda não configurou o NestJS e o Swagger, siga as etapas de configuração básica do NestJS e do Swagger.

Passos para Configurar o Swagger com Suporte a UTF-8

  1. Definir a Codificação UTF-8 para os Modelos

    Certifique-se de que os modelos do seu aplicativo NestJS estejam definidos para usar a codificação UTF-8.

    @ApiResponse({
      status: 200,
      description: 'Successful response',
      headers: {
        'Content-Type': { type: 'string', charset: 'utf-8' },
      },
    })
                
  2. Configurar o Swagger com UTF-8

    No arquivo onde você está configurando o Swagger (geralmente em main.ts), certifique-se de configurar o Swagger com suporte a UTF-8. Use a opção charset para especificar a codificação UTF-8.

    import { SwaggerModule, DocumentBuilder } from '@nestjs/swagger';
    
    const options = new DocumentBuilder()
      .setTitle('Seu Título da API')
      .setDescription('Sua Descrição da API')
      .setVersion('1.0')
      .build();
    
    const document = SwaggerModule.createDocument(app, options);
    
    SwaggerModule.setup('api', app, document, {
      swaggerOptions: {
        docExpansion: 'list',
        defaultModelExpandDepth: 1,
        charset: 'utf-8', // Certifique-se de que o charset seja configurado corretamente
      },
    });
                
  3. Verifique a Codificação dos Dados

    Certifique-se de que os dados que você está enviando e recebendo em suas rotas e controladores estão corretamente codificados em UTF-8. Isso inclui o uso de strings e texto nos objetos de resposta e solicitação.

  4. Teste a Documentação Swagger

    Inicie seu aplicativo NestJS e acesse a documentação Swagger (geralmente disponível em http://localhost:3000/api). Verifique se as respostas da API, os modelos e os dados exibidos na documentação Swagger estão usando a codificação UTF-8.

Conclusão

Ao seguir esses passos, você configurou o Swagger para considerar a codificação UTF-8 em seu aplicativo NestJS. Isso garantirá que a documentação gerada pelo Swagger esteja configurada corretamente para suportar caracteres UTF-8 em suas respostas e solicitações. Certifique-se de testar amplamente sua aplicação para garantir que os dados sejam corretamente manipulados em UTF-8.

Você achou esse artigo útil?