2010-05-18 20 views
5

por alguna razón u otra Necesito javascript para acceder a un servidor web en el host local. Este servidor web localhost está bajo nuestro control para que podamos tener cualquier software que se ejecute en él.javascript de dominio cruzado para acceder a localhost. ¿Posible?

¿Cómo harías esto? He visto cosas como YQL pero esto tiene acceso a otro dominio de internet. Este tipo de acceso causa muchos problemas con los firewalls y tal. Así que quiero acceder a la misma computadora en la que se ejecuta el navegador.

¿Cómo harías esto con javascript y con cualquier software que se ejecute en el servidor localhost?

Además, javascript se está ejecutando desde un sitio de Internet. Y el servidor localhost no se ejecutará en el mismo puerto donde se encuentra el sitio web.

¿Es esto posible? Sé sobre las restricciones entre dominios, pero también he visto que hay formas de evitarlos, como YQL. ¿Cómo funciona algo como YQL? ¿Cómo lo volverías a implementar?

Respuesta

0

Dado que es un puerto diferente, se aplicarán las restricciones de seguridad para el acceso de dominio cruzado.

Puede utilizar la llamada getJSON en jQuery para el acceso entre dominios:

http://api.jquery.com/jQuery.getJSON/

Aquí hay un tutorial de IBM de cómo se hace a través de la llamada jQuery mencionado anteriormente (con JSONP):

http://www.ibm.com/developerworks/library/wa-aj-jsonp1/

Si está utilizando IE, puede armar rápidamente una solución al configurar el sitio al que está intentando acceder desde el script a sus sitios de confianza, configurando la seguridad en el "Acc la opción "ess data sources across domains".

+0

Preferiríamos no tener que realizar una instalación como colocarla en sitios de confianza y también necesitar que sea un navegador cruzado – Earlz

+0

Agregó la solución de navegador cruzado. – gn22

1

Puede intentar algo como JSONP.

En JSONP, utiliza etiquetas de scripts creadas dinámicamente para acceder a elementos en otros dominios. La URL se puede usar para pasar datos al servidor, y la secuencia de comandos devuelta puede llamar a una devolución de llamada para devolver datos. Por lo que recuerdo, no hay restricciones especiales para realizar solicitudes a localhost (a diferencia del sistema de archivos), pero podría estar equivocado.

+0

Entonces, ¿para acceder a localhost JSONP ni siquiera es necesario? ¿Localhost es diferente de otros dominios? – Earlz

+2

Lo que quise decir es que (AFAIK) localhost no recibe un tratamiento diferente de los dominios * Internet *. La política de dominios cruzados aún se aplica. –

Cuestiones relacionadas