Заголовки CORS
присутствуют в ответе системы, которую вы пытаетесь вызвать. (Они проверяются на стороне клиента [в данном случае браузера], вы можете реализовать вызов на своем бэкэнде, чтобы иметь эти вызовы, и там вы можете игнорировать эти заголовки, но это может стать довольно сложно поддерживать.) Чтобы изменить те, которые вы Мне нужен proxy
. Таким образом, ваше приложение не будет вызывать URL-адрес напрямую, как
fetch("https://localhost:9090/api/sometest")
Есть как минимум два способа: один — добавить прокси непосредственно перед сервером сонара и изменить заголовки для всех. Я действительно не рекомендую это из соображений безопасности. :)
Другое более удобное решение — пройти через локальный домен веб-приложения мониторинга следующим образом:
fetch("/proxy/nexus/api/sometest")
Для этого вам нужно настроить прокси, где работает ваше приложение. Это может отображать различные службы, от которых вы зависите, и при необходимости изменять заголовки.
Я не знаю, какое приложение http server
вы собираетесь использовать, но вот некоторые документы по настройке прокси на эту тему:
Для Apache HTTPD mod_proxy
вы можете использовать аналогичная конфигурация:
ProxyPass "/proxy/nexus/" "https://localhost:9090/"
ProxyPassReverse "/proxy/nexus/" "https://localhost:9090/"
Возможно, также необходимо использовать файлы cookie, поэтому вам может потребоваться взглянуть на следующие конфигурации:
Для Nginx расположение вы могли бы использовать что-то следующим образом
location /proxy/nexus/ {
proxy_pass https://localhost:9090/;
}
Для node.js см. документацию: https://github.com/nodejitsu/node-http-proxy
module.exports = (req, res, next) => {
proxy.web(req, res, {
target: 'https://localhost:4003/',
buffer: streamify(req.rawBody)
}, next);
};
18.06.2019