2016-11-03 10 views
0

У меня есть приложение, которое должно быть в состоянии читать данные из любого источника данных, что означает любой API из любого домена.Разрешить кросс-начальную сторону приложения (без контроля API)

Как обойти проблему Cross-Origin, если у вас нет контроля над API или даже доменом, из которого он поступает?

Я знаю, что вы могли бы имитировать тот же домен, добавив блок

location /data/ { 

    proxy_pass http://exampleAPIdomain.com/data/; 

} 

для обеспечения определенного домена API (здесь: exampleAPIdomain.com), но в моем случае я хочу быть открытым для любого домен.

Возможно ли это?

ответ

0

Да, это возможно при использовании переменной в proxy_pass -directive:

proxy_pass $somevariable$request_uri; 

Вы можете установить фактический хост с помощью заголовка, например, то директива будет:

proxy_pass $http_someheader$request_uri; 

Примечание по безопасности. Если вы предоставите это в Интернете без какой-либо авторизации, каждый может использовать ваш прокси-сервер для прокси-сервера.