2011-03-05 13 views
8

Dado el siguiente código¿Cómo hago la codificación de contenido correctamente en node.js?

var http = require('http'); 

http.createServer(function (request, response) { 
    response.writeHead(200, {'Content-Type': 'text'}); 
    response.write("Okay – so recently I’ve started presenting a session to various groups involving the well known IOC container “StructureMap”", 'utf8'); 
    response.end(); 
}).listen(8080); 

me sale la salida

una autorización del € “tan recientemente IA € ™ ve comenzado presentar una sesión a varios grupos que implican el conocido COI contenedor â Â € œStructureMapâ € â € "ya pesar de que es bastante claro sobre el contenido de dicha charla, estoy recibiendo un poco de de reacción para demostrar cualquier cosa que incluso se parece remotamente a la ubicación del servicio .

Esto está claramente mal, pero ¿está mal porque tengo una codificación incorrecta (UTF8 debería hacerlo ... ¿verdad? ... ¿verdad?) O ¿está mal porque el nodo está haciendo algo raro?

Estoy utilizando la última versión del nodo, clonado de Github Master ayer.

+0

¿Tiene el encabezado correcto en la metaetiqueta de la página? ¿El texto ha sido escrito y guardado en un editor de texto con una codificación diferente? – cusimar9

+0

Mira a continuación - mira el tipo de contenido :-) –

Respuesta

10

Si desea que se descargue como un archivo de texto con la codificación adecuada, debe usar el tipo de contenido text/plain; charset=utf-8. Simplemente usando text no es suficiente. Acabo de probarlo y funciona como esperaba. Cambie plain a html para que el navegador use sus estilos predeterminados en el texto.

+0

Vaya, dumbass me. –

+0

Edité mi respuesta para mostrarle cómo el navegador diseñó el contenido. –

+0

Sí - es genial - Sé esto :-) - De hecho, quiero texto sin formato para este, ya que estoy volcando archivos sin procesar de un lugar a otro –

Cuestiones relacionadas