2010-12-07 29 views
3

Je diffuse du contenu html/javascript à distance dans une application pour iPad. Le code Javascript fonctionne très bien et le rendu html est correct, mais toute tentative d'accès à localStorage renvoie "Security_err: dom exception 18".Accéder à localStorage dans les applications iOS

J'essayais d'utiliser localStorage car Safari n'accepte par défaut pas les cookies tiers. Existe-t-il un moyen de définir des cookies ou de stocker des valeurs dans localStorage à partir de contenu distant afin de conserver l'état lorsqu'il est diffusé dans une application iOS?

Répondre

0

Je sais que cette question est ancienne (et gagne de la poussière), mais voici une réponse.

L'exception 18 est généralement un problème d'autorisation inter-domaines.

considèrent l'une des solutions suivantes:

  1. Au lieu de précharger la chaîne html, puis en utilisant [myWebView loadHTMLString:str baseURL:url];, laissez la WebView gérer l'ensemble du cycle de vie de demande à l'aide [myWebView loadRequest:someNSURLRequest];

  2. Si your'e en utilisant Cordova, modifiez votre fichier Cordova.plist, ajoutez une nouvelle entrée à la liste ExternalHosts avec la valeur * (veuillez considérer le security compromise avec cette solution).