2010-12-03 2 views
3

Я пытаюсь вызвать API Vimeo, используя $.ajax(), но Jquery добавляет обратный вызов к моему URL, даже когда я указываю свою собственную именованную функцию. Мне нужен полный контроль над строкой URL GET.Запретить jquery добавлять свой собственный обратный вызов

Мой код:

запрос
function fback(data) { 
    alert('data = ' + data); 
} 

$.ajax({ 
    url: 'http://vimeo.com/api/v2/group/processing/videos.json?format=jsonp&callback=fback', 
    dataType: "jsonp", 
    type: "GET", 
    cache: true, 
    success: fback, 
}); 

ГЭТ идет к:

http://vimeo.com/api/v2/group/processing/videos.json?format=jsonp&callback=fback&callback=jsonp1291384300228

Как я могу избежать этого автоматическое добавление обратного вызова?

ответ

3

Вам просто нужно указать jsonpCallback option быть именем функции вы после этого, как это:

$.ajax({ 
    url: 'http://vimeo.com/api/v2/group/processing/videos.json?format=jsonp&callback=?', 
    jsonpCallback: "fback", 
    dataType: "jsonp", 
    type: "GET", 
    cache: true 
}); 

Что это делает вместо этого случайно сгенерированного имени (ну не так случайно, но вы получите точка), она будет использовать ` "FBAck", в результате чего:

http://vimeo.com/api/v2/group/processing/videos.json?format=jsonp&callback=fback 

You can test it out here.

+0

jquery по-прежнему автоматически добавляет часть '& callback = fback' к URL-адресу GET. В этом случае это правильное имя функции. Но он по-прежнему меняет мою строку, которая плоха, так как эта строка должна быть подписана. Помимо сращивания обратных вызовов из строки после подписания, существует ли другой способ, чтобы две подстроки '& callback = fback' не добавлялись к URL-адресу GET? – moskovich 2010-12-03 17:40:56

 Смежные вопросы

  • Нет связанных вопросов^_^