Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

485
Visualizações
¿Cómo establecer el tipo de contenido al hacer res.send ()?

Al final de la función de ruta, cuando hago algo como esto.

 res.send(JSON.stringify({...}));

Me gustaría que el tipo de contenido de la respuesta se establezca como "texto/sin formato", pero es "texto/html". ¿Hay alguna forma de configurarlo explícitamente? Busco en el documento pero aún no tengo ninguna pista.

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

setHeader antes de enviar: https://nodejs.org/api/http.html#http_response_setheader_name_value

 res.setHeader('content-type', 'text/plain'); res.send(JSON.stringify({...}));
over 4 years ago · Santiago Trujillo Relatório

0

Hay algunas formas de lograr esto, la más limpia/simple de las cuales es probablemente (asumiendo el uso de express , según la etiqueta; vea la opción de respuesta final si no usa expressjs):

 res.type('txt'); res.send(JSON.stringify({...}));

Eso es usar res.type , que brinda una serie de abreviaturas, además de poder establecer tipos mimo explícitos, por ejemplo (entre muchos otros):

 res.type('.html') // => 'text/html' res.type('html') // => 'text/html' res.type('json') // => 'application/json' res.type('application/json') // => 'application/json' res.type('png') // => 'image/png' res.type('mp3') // => 'audio/mp3'

A partir de este escrito, esto se implementa en términos de res.set , que también podría llamarse directamente:

 res.set('content-type', 'text/plain'); res.send(JSON.stringify({...}));

Estas son las formas oficialmente documentadas de realizar esta funcionalidad (excepto que también res.header es un alias para res.set ). Sin embargo, parece que los objetos de respuesta se derivan de http.ServerResponse y, por lo tanto, también tienen (y usan , en la implementación) el método setHeader de eso, que tiene el mismo uso que res.set , sin la misma funcionalidad. como res.set (algunas comprobaciones no se realizan, etc.) ... Pero hace el trabajo básico, por lo que es muy posible que uno pueda encontrar un código en la naturaleza que resolvería los objetivos de esta pregunta como (especialmente si no es una aplicación express, sino que usa el paquete http en su lugar):

 res.setHeader('Content-Type', 'text/plain'); res.send(JSON.stringify({...}));

(Como nota al margen: según RFC 7230 (anteriormente en RFC 2616 ), los nombres de los encabezados distinguen entre mayúsculas y minúsculas. Dicho esto, el Content-Type mayúsculas es lo que se usa en RFC 7231 , que define su significado y uso, y es lo que res.type usará Dicho esto, he visto al menos algunos ejemplos de res.set que se usan con nombres de encabezado en minúsculas, así que pensé en mostrar que ambos son posibles).

over 4 years ago · Santiago Trujillo Relatório

0

Puede probar res.set para establecer un encabezado Content-Type , así:

 res.set('content-type', 'text/plain'); res.send(JSON.stringify({...}));
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda