तो, एक निम्नलिखित 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"
}
$
वहाँ नोड या एक्सप्रेस का उपयोग कर एक सर्वर से एक प्रतिक्रिया में वास्तव में एक ही शरीर का उत्पादन करने का एक तरीका है? स्पष्ट रूप से, कोई हेडर सेट कर सकता है और संकेत कर सकता है कि प्रतिक्रिया का सामग्री-प्रकार "एप्लिकेशन / जसन" होने जा रहा है, लेकिन फिर ऑब्जेक्ट को लिखने / भेजने के लिए अलग-अलग तरीके हैं। जो मैंने आमतौर पर इस्तेमाल किया जा रहा है वह प्रपत्र की एक कमांड का उपयोग करके है:
response.write(JSON.stringify(anObject));
हालांकि, इसके दो बिंदु हैं जहां कोई तर्क दे सकता है जैसे कि वे "समस्याएं" थे:
- हम एक तार भेज रहे हैं।
- इसके अलावा, अंत में कोई नई पंक्ति वर्ण नहीं है।
कमांड का उपयोग करने के लिए एक और विचार है:
response.send(anObject);
यह ऊपर दिए गए पहले उदाहरण के समान कर्ल के आउटपुट के आधार पर JSON ऑब्जेक्ट भेजना प्रतीत होता है। हालांकि, शरीर के अंत में कोई नया लाइन वर्ण नहीं है जब कर्ल को फिर से एक टर्मिनल पर उपयोग किया जा रहा है। तो, कोई वास्तव में नोड या नोड / एक्सप्रेस का उपयोग करके अंत में संलग्न एक नई पंक्ति चरित्र के साथ ऐसा कैसे लिख सकता है?