Tengo una URL de una página remota desde dominio diferente que tengo que descargar, analizar y actualizar DOM de la página actual. He encontrado ejemplos de hacer esto usando nuevo ActiveXObject ("Msxml2.XMLHTTP"), pero eso está limitado a IE, supongo, y usando nuevo java.net.URL, pero no quiero usar Java . ¿Hay alguna alternativa?¿Cómo obtener el contenido de una página remota con JavaScript?
Respuesta
La misma política de dominio lo va a lograr.
1) Proxy a través de su servidor. navegador-> su servidor-> su servidor-> su servidor-> navegador.
2) Use flash o silverlight. El tercero debe darle acceso. El puente entre javascript y flash no es bueno para grandes cantidades de datos y hay errores. Silverlight no es omnipresente como flash ...
3) utilice una etiqueta. Esto realmente no es seguro ... Solo funciona si el contenido de terceros es javascript válido.
¿Se correrá localmente un bookmarklet sujeto a las mismas restricciones? –
El objeto XMLHTTPRequest es común para la mayoría de los navegadores modernos y es lo que impulsa las aplicaciones web AJAX.
dijo en un dominio diferente ... –
Si crean un estándar, es posible que www.datejs.com todavía pueda usar AJAX para esto ... aunque yo no lo recomendaría ... –
¿Qué hay sobre cargar un script de PHP a través de AJAX que hace file_get_contents()
? Esto debería funcionar para diferentes dominios. Si entiendo correcto.
Eso es básicamente lo que sugirió Steve Brewer. Pero preferiría evitar usar un proxy, si es posible. – Vitaly
Escribir un script del lado del servidor que recupere el contenido de la página es el camino a seguir. Puede usar el objeto XMLHttpRequest para hacer una llamada AJAX a esa secuencia de comandos, que simplemente mostrará todo html (?) Por usted.
Aún así, desaconsejo. No sé exactamente cómo confías mucho en el otro sitio, pero existe la misma política de origen por algún motivo. ¿Qué es exactamente lo que estás tratando de hacer? Por lo general, hay una solución.
La misma política de origen es la forma segura de hacerlo. ¿Otro sitio tiene una API? –
Google Finance API no proporciona una forma de obtener cotizaciones de acciones, sin embargo, como se menciona aquí http://stackoverflow.com/questions/527703/google-financial-api-how-get-stock-quotes hay una forma de obtener citas como esta: http://finance.google.com/finance/info? q = GOOG – Vitaly
¿Está tratando de recuperar las cotizaciones de acciones de Google Finance? Ayuda a aclarar exactamente qué es lo que estás tratando de lograr :-) – JorenB
No creo que pueda hacer esto de acuerdo con las limitaciones de la misma política de origen. Dos se comunican entre dos dominios usando Iframes. También podemos usar el código JS pero ambos dominios necesitan tener un código de comunicación en ellos. El cuadro secundario puede contactar al cuadro de abuelos (ventana) pero no aquí.
Como te refieres a alguna otra url togeather.
La única manera es hacerlo utilizando el código del lado del servidor para acceder al contenido en el otro dominio.
sólo tiene que utilizar PHP:
<?php
$url = "http://www.domaintoretrieve.com";
ob_start();
include_once($url);
$html = ob_get_contents();
ob_end_clean();
?>
$ HTML contiene toda la página para manipular según sea necesario.
- 1. obtener contenido html de una página con Silverlight
- 2. ¿Cómo obtener el título de la página HTML con JavaScript?
- 3. Cargando una página xml remota con file_get_contents()
- 4. ¿Cómo puedo analizar el contenido dinámico de una página web?
- 5. ¿Cómo puedo obtener el contenido de la página web
- 6. Obtener página generada con Javascript en Python
- 7. Obtener contenido de la página web con Ruby - Tengo problemas
- 8. Guardar contenido de página completa con Selenium
- 9. Cómo obtener el contenido html de nutch
- 10. Rails 3 forma remota: ¿Cómo especifico el tipo de contenido?
- 11. ¿Cómo obtener el contenido iFrame src usando javascript?
- 12. Cómo obtener el título actual de la página html con javascript
- 13. Obtener contenido de un DIV usando JavaScript
- 14. ¿Cómo obtener el contenido de un área de texto TinyMCE con JavaScript
- 15. cómo obtener el valor RGB de una imagen en una página usando javascript?
- 16. Obtener la URL completa incluyendo hash con contenido en JavaScript
- 17. reemplazando el contenido div con javascript
- 18. Obtener contenido de la página de Apache Commons Solicitud HTTP
- 19. Cargue el contenido de la página a la variable
- 20. presentar un raíles forma remota con javascript
- 21. ¿Cómo obtener el contenido de texto de todo el documento?
- 22. ¿Cómo puedo obtener una animación más suave para deslizar contenido con JavaScript/jQuery?
- 23. Múltiples instancias en una página con Javascript
- 24. Centrar el contenido de la página verticalmente
- 25. Obtener URL de la página usando javascript
- 26. Cómo establecer el título de la página desde una página de contenido web en ASP.NET 3.5
- 27. iOS: mostrar contenido desde un archivo de recursos html o una página web remota en una vista web
- 28. Python: cómo obtener el tipo de contenido de una URL?
- 29. Cómo obtener contenido textarea con jquery
- 30. Obtener lector de pantalla para leer contenido nuevo agregado con JavaScript
¿tiene usted el control del otro dominio? –
@Darko Z No, no lo hago – Vitaly