2010-12-01 31 views
11

Como iPad/iPhone no admite cookies de sitios de terceros, deseo almacenar valores en localStorage. Un ejemplo en domainA podría ser:Javascript localStorage y dominios

<script src="http://domainB/something.js"></script> 

esta secuencia de comandos en el dominio B puede acceder a window.localStorage y funciona muy bien. Sin embargo, los valores se almacenan en domainA porque esa es la ubicación del documento.

Si pongo mi script dentro de un iframe cuya fuente está en domainB, entonces funciona, pero estoy tratando de evitar frames. Entonces mi pregunta es: ¿hay alguna forma de obtener/establecer valores en localStorage en un dominio remoto para que estén allí cuando visite domainB en otro momento?

+6

Dios, espero que no. –

+0

Amigo, lea su propia pregunta: ** almacenamiento ** local ** en un dominio ** remoto :) Simplemente bromeando, sé a qué se refiere. Sin embargo, no sé la respuesta. Pero estoy con Jan en este (+1) – Jan

+0

. Bien, no los llaman "cookies remotas", pero existen en el dominio que los establece, incluso cuando se configuran a través de una URL referida desde el dominio anterior. Esperaba lograr algo similar. Simplemente cambiarlo de script a iframe que contiene un script lo resuelve, pero esperaba algo más elegante. –

Respuesta

5

Esto no es posible sin su solución iframe.

La capacidad de acceso al mismo objeto localStorage de múltiples dominios violaría la política del mismo origen, y la especificación:

Los agentes de usuario deben plantear una excepción SECURITY_ERR cada vez que alguno de los miembros de un objeto de almacenamiento originalmente devuelto por el atributo localStorage se accede por los scripts cuyos eficaz origen de la escritura no es el mismo que el origen del documento de el objeto de ventana en la que se accedió el atributo localStorage.

http://dev.w3.org/html5/webstorage/#security-localStorage

Si esto no era para iPhone, sugeriría una solución flash. Pero con localStorage, creo que no tienes suerte hasta que implementen una política de dominios cruzados.

Cuestiones relacionadas