मैं सॉकेट की तरह एक डेटा संरचना हैएक jQuery अजाक्स में एक JSON डेटा पैकेट serializing पोस्ट
var s = {
"a": "foo",
"b": 5,
"c": {"d": "a long string"},
"e": {
"f": {
"g": {
"h": [1, 0, -2.1, 1.43]
}
},
"i": {
"j": {
"k": [-3.2, 3.003, 0, 0]
}
}
}
};
मैं "एक" संग्रहीत करना चाहते हैं, "बी", "सी", और "ई" कुंजी डेटाबेस तालिका में परिवर्तनीय s
ताकि मैं उन्हें दोबारा पुनर्निर्माण कर सकूं। मैं एक jQuery अजाक्स पोस्ट के माध्यम से s
भेज रहा हूं। मूल्यों को केवल सादे पाठ के रूप में डाला और संग्रहीत किया जाएगा ("बी" को छोड़कर जो हमेशा एक संख्या है)।
ajax: {
url: uri,
type: "POST",
data: s,
dataType: "json",
success: function(data, status) { .. }
}
यहां समस्या है जो मैं सामना कर रहा हूं। फायरबग में मैं अपने पोस्ट पैरामीटर देख सकता हूं ... वे वास्तव में गड़बड़ कर रहे हैं। लगता है डेटा की तरह प्रत्येक तत्व (एक गहरी क्रमबद्धता की तरह थोड़े) के स्तर पर, जबकि मैं की तरह
e={"f":{"g":{"h":[1,0,-2.1,1.43]}},"i":{"j":{"k":[-3.2,3.003,0,0]}}}
अद्यतन कुछ के लिए उम्मीद कर रही थी पर धारावाहिक किया गया है: इसके बजाय, मैं निम्नलिखित (मैं नहीं छोड़ा जाएगा है हो रही है नीचे स्ट्रिंग तो यह अधिक पठनीय है)
a=foo&b=5&c[d]=a long string&e[f][g][h][]=1&e[f][g][h][]=0&e[f][g][h][]=-2.1&e[f][g][h][]=1.43
शायद मैं इस गलत तरीके से कर रहा हूँ, तो एक बेहतर तरीका करने के लिए मेरा मार्गदर्शन कर सकते हैं।
+1 से आवश्यक जेएस को विशेष रूप से पुराने ब्राउज़र के लिए JSON2.js से जोड़ने के लिए शामिल कर सकते हैं। –
मैं निश्चित रूप से निश्चित हूं कि आप उस डेटा ऑब्जेक्ट को एन्कोड करने जा रहे हैं, क्योंकि आप s – Joe
पर स्ट्रिंग को कॉल कर रहे हैं यदि डेटा मान एक स्ट्रिंग है, तो 'jQuery' केवल यूआरआई एन्कोडिंग को HTTP पर स्थानांतरित करने के लिए पर्याप्त सुरक्षित बनाने के लिए करता है। मुझे नहीं लगता कि यह स्ट्रिंग को एन्कोड करेगा। – ShankarSangoli