सर्वर अनुरोध URL में किसी भी पैरामीटर को स्वीकार नहीं करेगा, इसलिए मुझे URL में सभी अतिरिक्त पैरामीटर को हटाने की ज़रूरत है और निश्चित रूप से मैं सर्वर को नियंत्रित नहीं कर सकता।क्या मैं यूआरएल में '? कॉलबैक =' पैरामीटर जोड़ने के बिना एक jQuery JSONP अनुरोध कर सकता हूं?
jQuery:
$.ajax({
type: 'GET',
url: 'http://cross-domain.com/the_jsonp_file,
jsonpCallback: 'jsonCallback',
contentType: 'application/json',
cache: 'true',
dataType: 'jsonp',
success: function(json) {
console.log(json);
},
});
JSONP फ़ाइल:
jsonCallback({"test": "hello"});
जब मैं भेज Ajax अनुरोध, URL ऐसा दिखाई देगा कि:
http://cross-domain.com/the_jsonp_file?callback=jsonCallback
लेकिन मैं इस की जरूरत है (बिना पैरामीटर):
http://cross-domain.com/the_jsonp_file
संपादित करें:
यहाँ मेरी पूरी स्थिति है:
function MyClass(imgs) {
// imgs is array of URLs
this.imgs = imgs;
this.submit = function() {
// button click event triggers this method
this._show();
};
this._show = function() {
var _this = this;
for (var i = 0; i < _this.imgs.length; i++) {
(function($, j) {
$.ajax({
type: 'GET',
url: _this.imgs[j],
jsonp : false,
jsonpCallback: 'jsonCallback',
cache: 'true',
dataType:'jsonp',
success: function(json) {
console.log(_this.imgs[j]);
},
});
})(jQuery, i);
};
};
};
और मैं इस त्रुटि संदेश मिला:
Uncaught TypeError: Property 'jsonCallback' of object [object Window] is not a function
अजीब बात कुछ अनुरोध सफलतापूर्वक बुला रहे हैं jsonCallback है।
सर्वर क्वेरी स्ट्रिंग्स के साथ अनुरोधों को पूरी तरह से मना कर देता है? –
आप jQuery का उपयोग करने के बजाय JSONP कोड लिखने के लिए सबसे अच्छा हो सकता है ... – lonesomeday
मैंने AJAX सेटिंग में 'डेटा टाइप:' स्क्रिप्ट 'की कोशिश की और यह बिना किसी पैरामीटर के यूआरएल बना रहा है, लेकिन मुझे नहीं पता कि कॉलबैक कैसे बनाया जाए कार्य काम कर रहा है। – Jonypoins