2012-06-07 2 views
2

Я пытаюсь выполнить вызов JSONP для api, но я не уверен, поддерживает ли API JSONP, не знаю, как я могу проверить это. Но ниже показана ошибка консоли firebug, которая является недопустимой меткой. Означает ли это, что api не поддерживает JSONP, это что-то не так в моем звонке.JSONP вызов с недопустимой меткой

Вот мой зов к api. Я изменил URL, потому что клиент не будет счастлив мой выдавая URL

jQuery.getJSON("http://blaa.blaa.com/api/services?format=js&callback=?", 
    function (data) { 
     console.log("services data = ", data); 
    }); 

Когда я проверяю в поджигатель Я получаю эту недопустимый ярлык

{"services":{"service":[{"name":"tt"... 

servic...2711124 (line 1, col 1) 
+0

Если вы дадите нам либо настоящий URL-адрес JSONP, который вы пытаетесь, либо полный ответ, который вы получаете, мы можем сказать, возвращает ли он JSONP или нет. – jfriend00

ответ

2

Invalid label является ошибка, вы сможете получить, когда то, что вы ожидаете, будет использоваться как контент JSONP (т.е. код Javascript), на самом деле является содержимым JSON.

Это не относится Javascript, даже если это JSON объект:

{'foo' : 'bar'} 

Это происходит потому, что { трактуется как открытие block, а не литерала объекта. 'foo' обрабатывается как попытка создать label, где он недействителен, чтобы иметь метки окружения.

Это, по сути, является загадочным сообщением о том, что сервер не понимает JSONP или что вы его не запросили должным образом (некоторые серверы запрашивают дополнительные параметры за пределами стандартного callback=).

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