(Access-Control-Allow-Origin - проблема CORS при извлечении данных из 2 URL для обещаний - PullRequest
0 голосов
/ 11 мая 2018

Итак, у меня есть обещания в AngularJS, которые извлекают данные из двух URL.

promises.push(loadingJson('example.com/1.json'));
promises.push(loadingJson('example.com/2.json'));

$q.all(promises).then(function(resultList){ 
}, function(errList){
});

После запуска страницы (с помощью Promises) на веб-сервере выдается сообщение об ошибке «Origin 'www.abc' не разрешен Access-Control-Allow-Origin». и «XMLHttpRequest не может загрузить« 1.json »и« 2.json »из-за проверок контроля доступа».

Для метода Jquery GET я могу использовать JSONP для устранения ошибки. Но есть ли способ решить эту проблему в обещаниях angularJS?

1 Ответ

0 голосов
/ 11 мая 2018

AngularJS на стороне клиента. Вы можете решить свою проблему на стороне сервера и оставить свой код AngularJS без изменений. Вы можете использовать Cors.

Это зависит от вашего веб-сервера. Например, если вы используете экспресс, попробуйте этот пакет

https://www.npmjs.com/package/cors

, а затем установите его правильно, и он будет работать. (Возможно, вы пытаетесь запустить сервер и клиент на одном хосте? Это довольно распространенный сценарий)

...