से डेटा भेजने के लिए मैं Angularjs और Django सर्वर पर इसके $ http मॉड्यूल का उपयोग करके एक पोस्ट AJAX अनुरोध भेज रहा हूं। यहां एक उदाहरण दिया गया है:angularjs से django
$http({
method: 'POST',
url: '/url/',
data: 'test data'
}).
success(function(data, status, headers, config) {
doSomeStuffWhenSuccess();
});
समस्या मैं Django में प्राप्त करता हूं। कोई फर्क नहीं पड़ता कि मैं डेटा भेजता हूं हमेशा QueryDict
ऑब्जेक्ट की कुंजी है और इसका मान हमेशा खाली सूची है।
<QueryDict: {u'test data': [u'']}>
मेरे पास कोई सुराग नहीं है। मैं क्या खो रहा हूँ?
मैं लगभग डिफ़ॉल्ट डिफ़ॉल्ट डीजेंगो एप्लिकेशन का उपयोग केवल डिफ़ॉल्ट मध्यवर्ती के साथ करता हूं। मैंने केवल एक दृश्य बनाया और यूआरएल कॉन्फ़िगरेशन में एक यूआरएल सेट किया। Django का संस्करण 1.3 है। और मैंने Django को संतुष्ट करने के लिए हमेशा एक हेडर containg csrf टोकन भेजने के लिए कोणीय के $ http मॉड्यूल को कॉन्फ़िगर किया।
धन्यवाद यह काम करता है! लेकिन क्या आप समझा सकते हैं कि क्यों django अपने urlencoded डेटा सोचता है? और यदि इसे अनुकूलित करना संभव है? – davekr
request.GET और request.POST में प्रीप्रोसेस्ड कुंजी/मान डेटा शामिल है - यदि आप कच्चे डेटा (जैसे JSON या सादा पाठ) चाहते हैं तो प्रयास करें: request.raw_post_data –