यह तय करना मुश्किल है
वर्तमान में मैं के रूप मेंबनाम json HTTP POST एक्स www फार्म-urlencoded
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($this->arguments));
या
साथ php lib कर्ल के साथ एक्स-www फार्म-urlencoded डेटा भेज रहाcurl_setopt($curl, CURLOPT_POSTFIELDS, $this->arguments);
पहला प्रश्न: दूसरा एक बड़ा सामग्री लंबाई लगता है, पहला समाधान शायद बेहतर है?
ऐसा लगता है कि फ्लैट संदेशों के लिए व्यावहारिक है:
{
"name": "John",
"token": "2121232145",
"code": "7",
"data": "Hello"
}
लेकिन मैं यह भी एक डेटा क्षेत्र है कि एक वस्तु का प्रतिनिधित्व करते हैं, इस मामले में मैं इसे enconding किया गया था, लेकिन यह है कि (JSON एन्कोडिंग यूआरएल) कर रही हो सकता है बहुत है वर्बोज़ और बदसूरत संदेश,
दूसरी तरफ मैं आवेदन/json सामग्री प्रकार के रूप में यह भेजने की कोशिश की पर
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($this->arguments));
सामग्री-लंबाई छोटे संदेशों लेकिन w के लिए बड़ा है ith एम्बेडेड json, यह स्पष्ट रूप से बेहतर है
लेकिन एक्स-www फार्म-urlencoded भी रूपों डेटा मैं भेजने के लिए, को छोड़कर जब एक json
एम्बेडेड है यह 2 विभिन्न करने के लिए सुरुचिपूर्ण नहीं होगा की जरूरत के करीब है सामग्री प्रकारों के आधार पर सर्वलेट पार्स विधियां, तो क्या कोई दूसरा विकल्प है?
लघु: एक्स-www-form-urlencoded। लंबा: यह वास्तव में निर्भर करता है कि आप किस प्रकार का डेटा भेजते हैं (जटिल नेस्टेड ऑब्जेक्ट्स या उदाहरण में कुछ फ़ील्ड)। साथ ही यह निर्भर करता है कि आप भेजे गए डेटा के साथ क्या करने जा रहे हैं, क्या इसे तत्काल पार्स किया जाएगा और संसाधित किया जाएगा या इसे संग्रहीत किया जाएगा और फिर उपयोगकर्ता को भेज दिया जाएगा (जेसन एन्कोडेड प्रारूप में)? – pinepain
@pinepain डेटा को ग्लासफ़िश सर्वर पर भेजा जाता है, इसे कैसंड्रा डेटाबेस में पार्स किया जाता है और डाला जाता है, इसे इस '{' डेटा ': json_encode ({' text ':' 2klines .. ',' लेखक 'की तरह घोंसला किया जा सकता है। : 'मुझे'}), 'आईडी': '14141', 'कीवर्ड': json_encode ({[{टैग ': [' नीला ',' लाल ']}, {' लेखक ': [' me ']} }), ..} ' –
चीजों को करने के लिए एक ही तरीके का उपयोग करना बहुत सरल बनाता है। JSON का उपयोग क्यों न करें? PHP की वजह से जो फॉर्म डेटा को $ _POST/$ _ GET/$ _ के रूप में अनुरोध करता है, रिकॉर्डेबल चर और JSON डेटा उबाऊ file_get_contents ('php: // input') के साथ। मुझे नापसंद है कि दुनिया PHP के चारों ओर फैलती है। नोड.जेएस में यह फॉर्म डेटा के बजाय JSON का उपयोग करने के लिए बहुत ही सरल और प्राकृतिक है। –