2012-07-27 11 views
21

मैं अपने बाकी एपीआई बैकएंड कि उन्नत बाकी ग्राहक या क्रोम के लिए डाकिया के साथ JSON स्वीकार करती है या करने की जरूरत है।कैसे एक्सप्रेस/उन्नत बाकी ग्राहक या पोस्टमैन के साथ नोड REST API बैकएंड परीक्षण करने के लिए?

लेकिन मैं मुद्दों में चला रहा हूँ: मैं केवल का उपयोग कर अनुरोध भेज सकते हैं में निर्मित फार्म और सामग्री प्रकार का उपयोग कर: आवेदन/x-www फार्म-urlencoded

लेकिन चूंकि मैं इस काम नहीं करेगा

{title:"Awesome post!", tags: ["blue", "jeans"] } 

यह या तो Chrome एक्सटेंशन में निर्मित रूपों के साथ संभव नहीं है: एम्बेडेड documennts, उदाहरण के लिए, मैं पोस्ट करने के लिए इस की जरूरत है।

जब मैं कच्चे शरीर का चयन करें और वहाँ सामग्री सम्मिलित है, मेरे बैकएंड एक खाली वस्तु होने के रूप में req.body देखता है। जब मैं भी शीर्ष लेख "सामग्री प्रकार: आवेदन/json" सेट, मैं अपने बैकएंड में निम्न त्रुटि मिलती है:

SyntaxError: Unexpected token n 
at Object.parse (native) 
at IncomingMessage.exports.parse.application/json (/Library/WebServer/Documents/slipfeed/node_modules/express/node_modules/connect/lib/middleware/bodyParser.js:135:16) 
at IncomingMessage.EventEmitter.emit (events.js:85:17) 
at IncomingMessage._emitEnd (http.js:366:10) 
at HTTPParser.parserOnMessageComplete [as onMessageComplete] (http.js:149:23) 
at Socket.socket.ondata (http.js:1682:22) 
at TCP.onread (net.js:404:27) 

नोट: मैं अपने ऐप के कॉन्फ़िगरेशन में bodyParser() और methodOverride() का उपयोग कर रहा हूँ। उन्हें अक्षम करने में मदद नहीं मिली।

क्या सेटिंग्स मैं इतनी का उपयोग करना चाहिए कि मैं सिर्फ कच्चे शरीर क्षेत्र के लिए JSON प्रवेश कर सकता है और अनुरोध काम करेगा?

उत्तर को स्पष्ट करने के लिए: मुझे सामग्री-प्रकार: एप्लिकेशन/जेसन (अनुरोध शीर्षलेख में) दोनों सेट करना था और अच्छी तरह से गठित जेसन का उपयोग करना था जहां संपत्ति नाम काम करने के लिए डबल कोट्स के अंदर भी हैं। { "शीर्षक": "बहुत बढ़िया पोस्ट!", "टैग" [ "नीले", "जींस"]} :

उत्तर

27

उद्धरण में क्षेत्र गुण संलग्न प्रयास करें

+1

मैंने कोशिश की, मैं एक त्रुटि नहीं मिलता , लेकिन req.body खाली है – ragulka

+1

Actuall, ऐसा लगता है कि यह चाल है। मैंने हेडर से सामग्री-प्रकार: एप्लिकेशन/जेसन हटा दिया था। अब यह काम करता है, प्रतिभाशाली :) – ragulka

+0

@ragulka: क्या आप मुझे बता सकते हैं कि कैसे आप इसे किया था? मैंने हेडर जोड़ा है लेकिन यह अभी भी मुझे त्रुटि दे रहा है। साथ ही, जब मैं "एप्लिकेशन/एक्स-www-form-urlencoded" के रूप में भेजता हूं तो दो सामग्री-प्रकार शीर्षलेख सेट किए जा रहे हैं। – Razort4x

संबंधित मुद्दे