Vai de cross-domain scripting usando JavaScript funciona quando os dois quadros de ter o mesmo domínio 2 níveis acima?
-
13-09-2020 - |
Pergunta
Eu tenho um cenário, no qual um .net aplicativo é hospedado no portal SAP.
- SAP portal domínio: portalURL.al.xx.company.com
- Aplicativo de servidor de domínio: AppURL.ss.xx.company.com
Como você pode notar o portal e o aplicativo de servidor de domínios não mesmo 1 nível até.(i.é.em 1 nível, o portal domínio será al.xx.company.com & app server vai ser ss.xx.company.com).
No entanto, no 2 níveis tanto o portal e o servidor de aplicativo domínios são a mesma.(i.é.xx.company.com).
No meu código JavaScript, temos o documento.domínio do objeto a ser xx.company.com.No entanto ainda estou ficando 'permissão negada'erro.
O protocolo de ambos portal e appserver são as mesmas.
Será que a cruz de domínio scripts sob a mesma origem do direito do trabalho somente se os domínios são os mesmos em 1 nível?Por favor, deixe-me saber.
Solução
Sim, a Mesma Origem política vai negar isso.Os dois quadros tem que ser exatamente no mesmo domínio, e até a mesma porta.
No entanto, document.domain
deve contornar isso.Se não funcionar para você, lembre-se que você tem para definir document.domain
para xx.company.com
no dois quadros (e, se você está trabalhando o seu caminho até a hierarquia de outras molduras para chegar lá (por exemplo, top.frame2
) você precisará configurá-lo para os outros quadros bem (top
).
Se você tem acesso a todo o código, porém, é possível que você pode contornar isso com JSON-P
Outras dicas
dê uma olhada em mesma política de origem , tente considerar o jsonp .