AJAX cross site scripting entre próprios domínios
-
03-07-2019 - |
Pergunta
Se houver qualquer maneira permite AJAX entre dois domínios próprios, sem pirataria procuração, mudanças JSONP, em Flash ou de segurança do navegador? Talvez SSL ou algo assim?
Solução
A assinado applet Java pode ser capaz de fazê-lo, mas isso é o mesmo princípio que o Flash para que provavelmente não iria atender às suas necessidades.
Há uma especificação para o domínio cruz pedidos , mas ele ainda está em as fases de desenvolvimento.
Outras dicas
Tanto quanto eu sei, a sua melhor aposta aqui é criar um recurso de servidor que você pode direcionar suas chamadas AJAX para que irá encaminhá-los para o segundo servidor em um domínio diferente e, em seguida, túnel os resultados de volta para a sua aplicação.
Você poderia tentar uma técnica conhecida como 'Ajast' .
Basicamente o javascript no domínio A adiciona marcas <script>
adicionais, conforme necessário para a página. Estas marcas de script apontam para arquivos javascript no domínio B (que não precisa ser .js estáticos) que lhe permite carregar dados de domínio B.
No par de ocasiões onde eu tive uma necessidade semelhante para trabalhar cross-domain Eu esquivou-lo usando um iframe sem fronteiras incorporado da mesma cor que a página de incorporação. É uma técnica antiga, antecipando uso AJAX generalizada e é muitas vezes esquecido nos dias de hoje por causa da mentalidade 'nós vamos usar AJAX'. No entanto, pode fazer muito com esta abordagem e pode ser suficiente se você está realmente preso. Certamente você pode codificar algumas interações muito complexas entre as páginas incorporadas e principais que podem dar, em certa medida, uma experiência de usuário similar a uma página habilitada para AJAX.
Um pensamento óbvio que ocorre, porém, e que eu nunca tentou - é possível incorporar um iframe para o segundo domínio dentro da página principal (ou seja, o primeiro domínio) e comunicar a partir da página principal para o segundo domínio via o iframe incorporado?
Apenas uso easyXDM , que permite uma fácil comunicação entre documentos de diferentes domínios. Dê uma olhada em um dos exemplos, http://consumer.easyxdm.net/current /example/methods.html
Sim, há uma maneira fácil se você estiver usando Apache. Alterar configurações no arquivo httpd-vhosts.conf do seu apache (estou usando Apache 2.2)
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.com
DocumentRoot “C:/apache-tomcat-6.0.29/webapps/myApplication”
ServerName skill-guru.com
ErrorLog “logs/skg1-error.log”
CustomLog “logs/skg1-access.log” common
Header set Access-Control-Allow-Origin “*”
<Directory “C:/apache-tomcat-6.0.29/webapps/myApplication”>
Options -Indexes FollowSymLinks
AllowOverride AuthConfig FileInfo
Order allow,deny
Allow from all
</Directory>
JkUnmount /*.jsp ajp13
</VirtualHost>