Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果禁用Cookie,iOS7无法访问HTML5本地存储_Ios_Html_Cookies_Local Storage_Ios7 - Fatal编程技术网

如果禁用Cookie,iOS7无法访问HTML5本地存储

如果禁用Cookie,iOS7无法访问HTML5本地存储,ios,html,cookies,local-storage,ios7,Ios,Html,Cookies,Local Storage,Ios7,在iOS7上,当尝试通过JavaScript访问HTML5 localStorage对象时,停止JavaScript的执行。它在以前的iOS版本中正常工作。 当新安装并启动应用程序时,该应用程序运行良好。但随后,我关闭应用程序并再次启动,它无法工作并且无法访问本地存储 要禁用Cookie,我使用了以下代码: [[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookieAcceptPolicy:NSHTTPCookieAcceptPolicyNe

在iOS7上,当尝试通过JavaScript访问HTML5 localStorage对象时,停止JavaScript的执行。它在以前的iOS版本中正常工作。 当新安装并启动应用程序时,该应用程序运行良好。但随后,我关闭应用程序并再次启动,它无法工作并且无法访问本地存储

要禁用Cookie,我使用了以下代码:

[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookieAcceptPolicy:NSHTTPCookieAcceptPolicyNever];
CGRect rect = self.view.frame;
UIWebView* webView = [[UIWebView alloc] initWithFrame:rect];
[self.view addSubview:webView];
[webView loadHTMLString:@"<script>alert('hello world');alert(localStorage);</script>" baseURL:nil]
要访问localStorage,我使用了以下代码:

[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookieAcceptPolicy:NSHTTPCookieAcceptPolicyNever];
CGRect rect = self.view.frame;
UIWebView* webView = [[UIWebView alloc] initWithFrame:rect];
[self.view addSubview:webView];
[webView loadHTMLString:@"<script>alert('hello world');alert(localStorage);</script>" baseURL:nil]
CGRect-rect=self.view.frame;
UIWebView*webView=[[UIWebView alloc]initWithFrame:rect];
[self.view addSubview:webView];
[webView loadHTMLString:@“警报('hello world');警报(localStorage);“baseURL:nil]
我已经查看了iOS7文档,但找不到与此问题相关的任何更新。有人也面对过这个问题吗?请分享有关这方面的任何信息,这将非常有帮助。有什么解决办法吗

谢谢

试试:

window.localStorage
e、 g:

[webView loadHTMLString:@“警报('hello world');警报(window.localStorage);“baseURL:nil];

这是一篇较旧的帖子,但fwiw

不确定我是否经历过这个问题。在使用iOS6/7的多个项目上使用了带cookie和不带cookie的localStorage

提供的loadHTMLString对我来说有点奇怪。。。所以我尝试了这个

    [webView stringByEvaluatingJavaScriptFromString:@"alert('hello world');alert(localStorage);"];
。。。它工作正常,并按预期显示localStorage对象,同时禁用Cookie


在sim卡和iOS7设备上测试

不确定这是否有帮助,但你可以在这里浏览博客--


我已经以自己的方式实现了HTML5本地存储,这可能就是您想要的。

希望听到您的发现。我们面临同样的问题。我找不到解决方法。我无法启用Cookies,所以最后我不得不更改服务器端和应用程序端的代码。我将数据保存在UserDefaults中,通过在我的WebView上执行javascript与网页通信,并使用本机javascript桥回调我的网页。我不知道这对你有多大帮助。因为我控制了服务器端代码,所以它对我有效。另一个信息是,我为这个问题提交了一个bug。苹果在结束我的bug报告时说,它是另一个bug报告的副本。所以,至少,这意味着苹果已经接受了这一缺陷,并希望他们能够修复它。但是天知道什么时候:)由于本地存储问题(当cookies被禁用时),Youtube视频不会在UIWebView中播放,如果其他网站使用本地存储,并且您在应用程序中禁用了cookies,则所有其他网站都无法正常工作。天知道,苹果什么时候才能解决这个问题。我已经停止使用HTML5本地存储。我将数据保存在一个文件中,并通过(UIWebView)本机Javascript桥将其发送到网页。使用这种方法,还必须修改服务器端代码。但对于第三方网站,我们不能做任何事情,除非苹果解决这个问题。