Расширение Postman получает ответ, но мой запрос jquery не [дубликат]

этот вопрос уже есть ответ здесь:

Я делаю запрос GET с помощью расширения Postman и получаю ответ, но если я делаю тот же запрос с помощью jQuery I получите типичную ошибку:

XMLHttpRequest не удается загрузить http://www.rfen.es/publicacion/ranking/resultsBySwimmer.asp?l=020039535&t=&p=0&e=50L-I. Заголовок "Access-Control-Allow-Origin" отсутствует в запрошенном заголовке ресурс.

почему это происходит?

мой код javascript прост:

function getTiempo (dni, piscina, prueba) {
    $.ajax({
        async: false,
        type: "GET",
        url: "http://www.rfen.es/publicacion/ranking/resultsBySwimmer.asp?l="+dni+"&t=&p="+piscina+"&e="+prueba
    })
    .done(function (data) {
        console.log(data);
        return data;
    });
}

расширение Postman также не находится в одном домене, почему он получает ответ?

1 ответов


просто, чтобы помочь будущим стипендиатам, ищущим этот конкретный вопрос:почему почтальон работает, а мой jQuery нет!

ответ довольно прост, на самом деле: расширения Chrome разрешены для этого!

обычные веб-страницы могут использовать объект XMLHttpRequest для отправки и получения данных с удаленных серверов, но они ограничены той же политикой происхождения. Расширения не так ограничены. Расширение может общаться с удаленными серверами за пределами своего источника, пока поскольку он сначала запрашивает разрешения cross-origin.

https://developer.chrome.com/extensions/xhr