Adobe Flex : brigando contra o crossdomain : resolvendo com um xml-proxy

sábado, 28/02/2009 12:42 am  

Algumas vezes nossa aplicação em Adobe Flex/Flash esbarra no tal crossdomain.xml, que limita o acesso de uma aplicação da Adobe para o respectivo domínio, não possibilitando que sua aplicação no http://dominioA.dom acessar algo que está no http://dominioB.com, porque lá existe um crossdomain.xml que limita o acesso ao conteúdo apenas para as aplicações Adobe Flash/Flex para o seu respectivo domínio.
 
Nessa hora que entra o tal do proxy, que nada mais é que um meio de caminho para acessar o conteúdo…
 
Nesse post, refere-se a um script PHP que utilizei para conseguir acessar um XML em um domínio que não consegui acessar diretamente pela minha aplicação Flex, com isto o funcionamento ficou assim:

Aplicação Flex > Script PHP > Pega XML do outro dominio > retorna para minha Aplicação Flex

( Realizar a chamada desse Script PHP, utilizando o HttpService do Adobe Flex)

 
eis o script:

1
2
3
4
5
6
7
8
9
/*
	revisado por : Erko Bridee
	Fonte:
	http://cognitivecache.blogspot.com/2008/03/overcoming-cross-domain-issues-through.html
*/
$url = ($_POST['url']) ? $_POST['url'] : $_GET['url'];
header('Content-Type: text/xml');
$content = file_get_contents($url);
echo $content;

 
e no Flex definir a URL do HttpService como o modelo abaixo:

?View Code ACTIONSCRIPT
1
httpService.url = "http://seu_dominio/xml_proxy.php?url=" + {URL_XML};

Feito isso, você conseguirá acessar algo no outro domínio, sem esbarrar no tal crossdomain =]

, , , , ,

Este post foi escrito por:

- que escreveu 500 post(s).


Entre em contato