Ir para conteúdo

POWERED BY:

Arquivado

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

a.n.d.e.r.s.o.n

[Resolvido] Como JS acessa html em OUTRO domínio (widget)?

Recommended Posts

Sei que, com JS, dá pra capturar um texto escrito em outra página qualquer, via XMLHTTPRequest... (famoso AJAX). Mas isso so funciona quando as paginas estao no mesmo servidor!!! Se eu tentar capturar dados de outra pagina em OUTRO servidor, via JS, da erro de acesso negado (devido aquela config. do across domain.) . Ok!

 

Para resolver isso, posso usar uma linguagem dinamica, irá funcionar! OK! Mas eu queria fazer isso com JS , para eu poder criar widgets para blogs!

 

Como faço isso ???

 

 

 

ps. ja tentei de tudo! http://forum.imasters.com.br/public/style_emoticons/default/cry.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala velho! Firme?

 

Vê se esse artigo aqui te da uma ajuda: http://www.sitepoint.com/article/counter-w...javascript-html

 

ABRAX!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

poxa... eu entendi que mostrava! Acho q viajei! uhAauhauhaAUHaUHA...

Foi mals..

 

E esse aqui? Ele fala sobre JS e XML (e RSS)!

 

ABRAX!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

este artigo q você me mostrou tb eh excelente, o cara escreve mto bem, massss ele mesmo deixou claro...

 

"o navegador não permite que você carregue qualquer arquivo que esteja fora de seu domínio, ou seja, nem adianta tentar carregar XML's ou RSS's de outros sites"

 

pow, como será q os widgets de blog funcionam hein... sao arquivos .js q acessam dados em outro servidor... http://forum.imasters.com.br/public/style_emoticons/default/ermm.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

caçarola! rs...

 

Já tentou analizar os .js desses sites pra ver se encontra uma luz?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ja!

vi o do UOL, eh esse aki: http://widgets.uol.com.br/uolwidgetstools.js

 

tem so 49 linhas, debuguei mas nao descobri a chave do negocio hahahahaha

 

ja!

vi o do UOL, eh esse aki: http://widgets.uol.com.br/uolwidgetstools.js

 

tem so 49 linhas, debuguei mas nao descobri a chave do negocio hahahahaha

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ja consegui mano! Apanhei, mas "consegui".

 

Nao tem como um javascript acessar dados em outro dominio. Nao rola MESMO!!!!!!! Entao, o lance é improvisar...

O codigo abaixo faz isso, ele "emula" dados de outro dominio em meu site... ou seja, nao faz a puxada em si de dados, mas apenas constrói um iframe q apresenta a pagina externa.

 

Via Javascript é isso q da pra fzer!! NADA MAIS! Cheguei a essa conclusao pois é assim q funciona os widgets do, nada mais nada menos, poderoso UOL.

Os seus widgets sao javascripts q puxam um iframe. (observacao importante: mesmo esta puxada, assim, já estava dificil de fazer, tive q estudar o codigo do uol ate entender... )

 

 

// JavaScript Document

(

function(){

 

var widgetScript = document.getElementsByTagName('script')[document.getElementsByTagName('script').length-1];

var widgetParent = widgetScript.parentNode;

var counter = 0;

 

if(widgetParent.className=="meuWidget") widgetParent.id = "meuWidgetStage";

 

var widgetContainer = document.createElement("div");

widgetParent.insertBefore(widgetContainer, widgetScript);

 

var isLoad = setInterval(function(){

try {

counter += 1;

widgetContainer.innerHTML = '<iframe src="http://www.uol.com.br" width="1600" height="376" frameborder="0" border="0" scrolling="no"></iframe>';

clearInterval(isLoad);

}

catch (e) {

if(counter>5) { // 3 seconds timeout

widgetContainer.innerHTML = '<iframe src="http://www.uol.com.br" width="1600" height="376" frameborder="0" border="0" scrolling="no"></iframe>';

clearInterval(isLoad);

}

else {

return;

}

}

},500);

}

)();

 

Este codigo pode ser colocado dentro de um .js, e chamado na sua página assim:

 

<div class="meuWidget">

<script src="http://www.DOMINIO-ONDE-ESTA-O-JS/SEU-ARQUIVO-JS.js" type="text/javascript"></script>

</div>

O .js e a pagina q chama o .js podem estar em servidores diferentes, emulando ate um terceiro site dentro do iframe q nao tem problema. Vai funcionar!

 

Foi assim que fiz no exemplo abaixo

Minha pagina de teste q chama o JS: http://buenit1.tempsite.ws/mz/teste8.html

Local onde está meu JS: http://www.dinomob.com/lab/mz/cwid2.js

No caso, chamo no iframe o site do UOL...

 

Enfim, é bom pra poder criar widgets.... emular dados de outros sites em seu site, blog...etc

 

;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poxa cara.... muito loko isso hein! Parabéns mesmo!! CURTI! ehehehehe...

 

Posta lá no Laboratório de Scripts cara!!!

 

ABRAX!!

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.