Подтвердить что ты не робот

Вызов JSONP, показывающий "Uncaught SyntaxError: Неожиданный токен:

Вот мой код

$.ajax({
        url: 'https://api.flightstats.com/flex/schedules/rest/v1/json/flight/AA/100/departing/2013/10/4?appId=19d57e69&appKey=e0ea60854c1205af43fd7b1203005d59&callback=?',
        dataType: 'JSONP',
        jsonpCallback: 'jsonCallback',
        type : 'GET',
        async: false,
        crossDomain: true,
        success: function(data) {
            console.log(data);
        }
    });

Что я делаю неправильно? я должен добавить или изменить что-нибудь здесь? Любая помощь будет оценена по достоинству. Благодаря

4b9b3361

Ответ 1

Рабочая скрипка:

http://jsfiddle.net/repjt/

$.ajax({
    url: 'https://api.flightstats.com/flex/schedules/rest/v1/jsonp/flight/AA/100/departing/2013/10/4?appId=19d57e69&appKey=e0ea60854c1205af43fd7b1203005d59',
    dataType: 'JSONP',
    jsonpCallback: 'callback',
    type: 'GET',
    success: function (data) {
        console.log(data);
    }
});

Мне пришлось вручную настроить обратный вызов на callback, так как, кажется, поддерживает все удаленные службы. Я также изменил URL-адрес, чтобы указать, что я хотел jsonp.

Ответ 2

Вы пытаетесь получить доступ к JSON, а не JSONP.

Обратите внимание на разницу между вашим источником:

https://api.flightstats.com/flex/schedules/rest/v1/json/flight/AA/100/departing/2013/10/4?appId=19d57e69&appKey=e0ea60854c1205af43fd7b1203005d59&callback=?

И фактический JSONP (функция обертывания):

http://api.flickr.com/services/feeds/photos_public.gne?jsoncallback=processJSON&tags=monkey&tagmode=any&format=json

Найдите JSON + CORS/Междоменную политику, и вы найдете сотни SO-потоков в этой самой теме.

Ответ 3

Я запускаю этот

var data = '{"rut" : "' + $('#cb_rut').val() + '" , "email" : "' + $('#email').val() + '" }';
var data = JSON.parse(data);

$.ajax({
    type: 'GET',
    url: 'linkserverApi',
    success: function(success) {
        console.log('Success!');
        console.log(success);
    },
    error: function() {
        console.log('Uh Oh!');
    },
    jsonp: 'jsonp'

});

И отредактируйте заголовок в ответе

'Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE'

'Access-Control-Max-Age', '3628800'

'Access-Control-Allow-Origin', 'websiteresponseUrl'

'Content-Type', 'text/javascript; кодировка = UTF-8'