У меня проблема с CORS, когда я пытаюсь выполнить запрос к внешнему API. Я пытался добавить маркер для всех запросов, как это:Настройка заголовков по умолчанию для всех HTTP-запросов не работает
var dApp = angular.module("app", []);
dApp.run(function($http) {
$http.defaults.headers.common.Authorization = 'APP token=TOKEN';
});
Authorization
строка определяется как определено по API. Если я проверяю заголовки запроса, я не вижу свою строку, а код возврата - 404 OPTIONS
. Я пытался сделать запрос с Postman, и он работает.
возвращает 404, но ошибка в консоли: Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://api.discogs.com/database/search?type=master&artist=The%20Strokes&format=album&callback=. (Reason: CORS header 'Access-Control-Allow-Origin' missing).
Если я передать маркер на URL она работает, но только с GET и POST запросов.
Я уже прочитал вопрос Angular.js performs an options http request for CORS resource, но я не нашел решение моей проблемы
404 означает, что ресурс не существует на сервере. URL-адрес неверен. –
Я попытался сделать запрос с Postman, и он работает. Он возвращает 404, но ошибка в консоли: «Запрос на перекрестный запрос заблокирован: политика одного и того же происхождения запрещает чтение удаленного ресурса по адресу https://api.discogs.com/database/search?type=master&artist=The% 20Strokes & = формат альбом и обратный вызов =. (Причина: заголовок CORS «Access-Control-Allow-Origin» отсутствует). Если я передам токен на URL-адресе, он работает, но только с запросами GET и POST. – emattiazzi
Чтение https://www.discogs.com/developers/, этот API, похоже, не поддерживает CORS. Вы должны использовать JSONP для доступа к API. –