Entonces, uno puede intentar obtener el siguiente objeto JSON:
$ curl -i -X GET http://echo.jsontest.com/key/value/anotherKey/anotherValue
HTTP/1.1 200 OK
Access-Control-Allow-Origin: *
Content-Type: application/json; charset=ISO-8859-1
Date: Wed, 30 Oct 2013 22:19:10 GMT
Server: Google Frontend
Cache-Control: private
Alternate-Protocol: 80:quic,80:quic
Transfer-Encoding: chunked
{
"anotherKey": "anotherValue",
"key": "value"
}
$
¿Hay alguna manera de producir exactamente el mismo cuerpo en una respuesta de un servidor usando node o express? Claramente, uno puede configurar los encabezados e indicar que el tipo de contenido de la respuesta será "application / json", pero luego hay diferentes formas de escribir / enviar el objeto. El que he visto que se usa comúnmente es mediante el uso de un comando de la forma:
response.write(JSON.stringify(anObject));
Sin embargo, esto tiene dos puntos donde uno podría argumentar como si fueran "problemas":
- Estamos enviando una cadena.
- Además, al final no hay un nuevo carácter de línea.
Otra idea es usar el comando:
response.send(anObject);
Esto parece estar enviando un objeto JSON basado en la salida de curl similar al primer ejemplo anterior. Sin embargo, no hay un nuevo carácter de línea en el extremo del cuerpo cuando el rizo se usa nuevamente en un terminal. Entonces, ¿cómo se puede escribir algo como esto con un nuevo carácter de línea agregado al final usando node o node / express?