2012-03-26 24 views
9

मुझे एक साधारण पृष्ठ पुनर्प्राप्त करने और डेटा लौटने की आवश्यकता है। क्या $.post() और $.get() के बीच कोई अंतर है क्या मैं दूसरे पर एक का उपयोग कर रहा हूं?

मैं अनुरोध के साथ कोई भी डेटा सबमिट करने की योजना नहीं बना रहा हूं।

+0

यहाँ एक शीघ्र सबसे अधिक इस्तेमाल किया jQuery AJAX के तरीकों में से नीचे: http://www.catchmyfame.com/2012/03/05/whats-the- सर्वोत्तम-jquery-method-for-पुनर्प्राप्ति-AJAX-data/ – j08691

उत्तर

12

यदि आप किसी HTML दस्तावेज़ से सामग्री पुनर्प्राप्त करना चाहते हैं, तो इसके बजाय $.load() का उपयोग करें।

$('#result').load('ajax/test.html'); 
$('#result').load('ajax/test.html #justThisContainerPlease'); 

http://api.jquery.com/load/


देखने के अधिक आम तौर पर इसकी कोई बड़ा अंतर आप कर रहे हैं कि क्या आपके सवाल का जवाब करने के लिए,:

तुम भी एक अतिरिक्त चयनकर्ता प्रदान करके उस दस्तावेज़ से आंशिक जानकारी प्राप्त कर सकते एक सर्वर के लिए POST या GET अनुरोध का उपयोग करके, यह उस डेटा की मात्रा पर निर्भर करता है जिसे आपको भेजने की आवश्यकता है। आमतौर पर, GET अनुरोध 2083 तक सीमित है (क्योंकि IE क्वेरी-स्ट्रिंग को सीमित करता है)। तो यदि आपके पास भेजने के लिए बहुत सारे डेटा हैं, तो आपको POST अनुरोध का उपयोग करना चाहिए।

तकनीकी रूप से, GET अनुरोध थोड़ा तेज़ होना चाहिए। क्योंकि आंतरिक रूप से केवल एक ही पैकेट कम से कम दो (हेडर के लिए एक और ट्रांसमिशन बॉडी के लिए) के बजाय भेजा जाता है। लेकिन वह वास्तव में उच्च प्रदर्शन अनुकूलन है।

+0

+1 और अंतिम अनुच्छेद के कारण स्वीकार किया गया। – qwertymk

+0

अंतिम पैराग्राफ को विस्तारित करने के लिए http://thenetworkguy.typepad.com/nau/2008/08/http-post-haste.html पढ़ें – mbx

0

$.get() के लिए जाएं क्योंकि आपको किसी भी डेटा को पोस्ट करने की आवश्यकता नहीं है, या $.load() यदि आप ब्राउज़र में पृष्ठ प्रदर्शित करना चाहते हैं (आप पृष्ठ के एक हिस्से को रीफ्रेश करना चाहते हैं)।

+0

क्या $ .get से $ .get का उपयोग करने का कोई कारण है? – qwertymk

+0

यह अर्थशास्त्र का अधिक है - POST का अर्थ है 'सर्वर पर संसाधन अपडेट करें', GET का अर्थ है 'सर्वर से संसाधन पुनर्प्राप्त करें'। –

2

यहां एक अच्छा पोस्ट article है जो HTTP पोस्ट और HTTP GET के बीच अंतर बताता है। मैं खुद $.ajax(); का उपयोग करना पसंद करता हूं और तदनुसार इसे ट्वीक करता हूं।

1

आप डेटा सबमिट नहीं कर रहे हैं, तो आप वास्तव में $.load();

$.get(); और $.post() का उपयोग करना चाहिए एक सर्वर से डेटा प्रस्तुत करने के लिए आम तौर पर कर रहे हैं, ताकि आप उन्हें इस संदर्भ में जरूरत नहीं है। POST और GET डेटा के बीच बड़े अंतर हैं, आपको कुछ समय read up on them पर लेना चाहिए।

0

उनके बीच मुख्य अंतर यह है कि POST के साथ आप डेटा का संग्रह पास करते हैं और जीईटी के साथ आप यूआरएल में डेटा पास करते हैं। यदि आप बहुत सारे डेटा पास कर रहे हैं तो मैं पोस्ट का सुझाव दूंगा। यदि आप केवल प्रतिक्रिया के लिए यूआरएल बुला रहे हैं तो प्राप्त करें।

पूर्ण समझ के लिए हालांकि प्रत्येक के jQuery दस्तावेज़ को चेकआउट करें।

प्राप्त करें: http://api.jquery.com/jQuery.get/

पोस्ट: http://api.jquery.com/jQuery.post/

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