2011-10-11 11 views
5

मैं एक पोस्ट अनुरोध भेजने के लिए निम्नलिखित कोड का उपयोग करने की कोशिश कर रहा हूँ भेजता है:jQuery पोस्ट अनुरोध वास्तव में के रूप में प्राप्त

$.ajax({ 
    type: "post", 
    url: 'http://api.com/'+apiUsername+'/'+apiBucket+'/elements/add', 
    dataType: 'jsonp', 
    contentType: "application/json", 
    data: JSON.stringify({ 
     username: apiUsername, 
     api_key: APIkey, 
     elementPermalink: tURL 
    }), 
    success: function() { 
     console.log('posted!'); 
    } 
}); 

हालांकि, इस हमेशा के माध्यम से GET अनुरोध, नहीं एक पोस्ट अनुरोध के रूप में चला जाता है, और एपीआई सर्वर इसके परिणामस्वरूप इसे अस्वीकार कर देता है। JQuery इसे एक GET अनुरोध करने का आग्रह क्यों कर रहा है?

(यह जानबूझकर क्रॉस-डोमेन है, लेकिन इतना है कि एक समस्या नहीं है यह JSONP है।)

उत्तर

20

JSONP है एक प्राप्त केवल इतना dataType: 'jsonp', हमेशा रहेंगे एक इस तरह मिल

JSONP की तरह देखें:

<script src="http://url.com/?query=string"></script> 

चूंकि जेसनपी क्रॉस-डोमेन के आसपास कैसे हो जाता है, यह केवल एक अनुरोध प्राप्त हो सकता है।

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