Yani, aşağıdaki JSON nesnesini almaya çalışabilirsiniz:
$ 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"
}
$
Düğüm veya ekspres kullanan bir sunucudan gelen yanıtta tam olarak aynı gövdeyi üretmenin bir yolu var mı? Açıkçası, üstbilgileri ayarlayabilir ve yanıtın içerik türünün "application / json" olacağını gösterebilir, ancak daha sonra nesneyi yazmak / göndermek için farklı yollar vardır. Yaygın olarak kullanıldığını gördüğüm, formun bir komutunu kullanmaktır:
response.write(JSON.stringify(anObject));
Ancak, bunun "sorunlar "mış gibi tartışabileceği iki nokta vardır:
- Bir dize gönderiyoruz.
- Dahası, sonunda yeni bir çizgi karakteri yoktur.
Başka bir fikir, komutu kullanmaktır:
response.send(anObject);
Bu, yukarıdaki ilk örneğe benzer bir kıvrım çıktısına dayalı bir JSON nesnesi gönderiyor gibi görünüyor. Bununla birlikte, bir terminalde kıvrılma tekrar kullanıldığında, gövdenin sonunda yeni bir çizgi karakteri yoktur. Peki, sonunda düğüm veya düğüm / ekspres kullanarak sonuna eklenen yeni bir çizgi karakteri ile böyle bir şeyi nasıl yazabilirim?