Olá Pessoal , estou quebrando a cabeça para resolver um problema de CORS em uma aplicação em Angular.
No meu ambiente de desenvolvimento eu resolvi criando um proxy local no node.js , dessa forma enganando o browser.
Agora preciso publicar a minha aplicação no Apache Web Server como posso criar um proxy ?
Por exemplo preciso consumir um serviço em outro dominio: “http://xxxxxx:9608/BPAManagement/agent/list” qndo tento consumir recebo 405 not allowed
A ideia é: na minha aplicação os apontamento ficarão “http://localhost:8080/BPAManagement/agent/list” o Apache faz o direcionamento para: “http://xxxxxx:9608/BPAManagement/agent/list”
Evitando CORS Aplicação Angular
1 Resposta
Solucao aceita
1 like
Pessoal, resolvi o problema criando um ProxyPass no Apache dessa forma “engano” browser para evitar o preflight
No httpd.conf:
# Proxy for BaseServer
<LocationMatch "/BPAManagement">
RewriteEngine On
ProxyPreserveHost On
ProxyPass "http://xxxxx:9608/BPAManagement"
</LocationMatch>
Explicando “/BPAManagement” é contexto da minha aplicação no backend toda requisição feita pelo browser passará no Apache e consequentemente no ProxyPass redirecionará para minha aplicação dessa forma evito o CORS
Outro ponto é alterar os apontamentos do backend na sua aplicação Angular onde deverá apontar para endereço do seu WebServer no meu caso o Apache
Se vc precisa encaminhar algum cabeçalho na requisição é interessante usar o HttpInterceptModule uma simples implementação : https://medium.com/@ryanchenkie_40935/angular-authentication-using-the-http-client-and-http-interceptors-2f9d1540eb8
Criado 20 de março de 2019
Ultima resposta 21 de mar. de 2019
Respostas 1
Participantes 1
Alura O que é Python? — um guia completo para iniciar nessa linguagem de programação Acesse agora o guia sobre Python e inicie sua jornada nessa linguagem de programação: o que é e para que serve, sua sintaxe e como iniciar nela!
Casa do Codigo Guia pratico de TypeScript: Melhore suas aplicacoes... Por Thiago da Silva Adriano — Casa do Codigo