Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Rodrigo Leles

Trazendo o mural do Facebook para o Flash

Recommended Posts

Pessoal, bom dia

 

Neste tópico levantei uma dúvida sobre como importar dados de um arquivo XML para o Flash. A questão era trazer o último post de um mural do Facebook para o Flash, por meio do feed.

Após dicas do pessoal do fórum e algumas pesquisas, encontrando "n" soluções envolvendo bibliotecas para importar ATOM ou trabalhos com a API do Facebook, encontrei uma solução que contorna passos mais complexos e tem um resultado final muito bom. Segue abaixo:

Conseguindo o link do Feed:

 

Acessando um perfil ou uma Fan Page, você poderá obter o endereço do Feed, que tem uma sintaxe como essa:

 

http://www.facebook.com/feeds/page.php?format=atom10&id=IDDAFANPAGE

Tratando os dados do Feed:

 

Os Feeds originados de um perfil ou Fan Page no Facebook são no formato ATOM. Para não termos que usar bibliotecas no Flash para importar os dados, vamos tranformá-lo em RSS por meio dessa ferramenta: http://feedburner.google.com/. Basta seguir os passos da tela usando o velho next, next, finish.

Agora, o passo mais importante: Você deve transformar o Feed importado pelo Feeburner em RSS 1.0, que é o formato como o Flash (usando AS2) vai conseguir puxar o texto do XML. Para isso, acesse essa tela. Aqui, escolha RSS 1.0 para alterar o formato do Feed. Feito isso, volte a tela inicial do Feeburner, onde são listados seus Feeds, e clique no ícone do RSS ao lado do nome do Feed escolhido, e em seguida em View Feed XML. Copie o endereço.

 

Colocando os dados no Flash:

 

Esta já é a etapa final com a qual você já deve estar familiarizado. Crie uma textbox com um nome de instância feed_txt. Numa outra layer, aplique no primeiro frame esse código para testar:

 

function loadXML(loaded) {
	if (loaded) {
		_root.feed = this.firstChild.childNodes[2].childNodes[0].firstChild.nodeValue;
		feed_txt.text = _root.feed;
	} else {
		content = "file not loaded!";
	}
}
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("ENDEREÇO DO FEED");
Neste caso, você vai puxar o primeiro post do mural do Facebook, ou seja, o mais atual. Duas coisas que não consegui fazer é puxar também o link postado junto ao post no mural, e também resolver esse espaço em branco que ele coloca antes do texto (mas isso é possível disfarçar em seu layout).

Caso dê algum erro, procure dar uma olhada no OUTPUT do Flash para ver que informações ele apresenta, ok?

 

Agradecimentos ao Berserck pela dicas!

 

Espero ter ajudado, abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.