未捕获的错误:SECURITY_ERR:DOM当我尝试设置一个cookie时出现exception18
当我尝试使用此 jQuery插件设置cookie时,Chrome的开发人员工具窗口中出现以下错误:
未捕获错误:SECURITY_ERR:DOMexception18
这个错误是什么意思,我该如何解决? 当我使用这个 jQuery插件时,我得到了同样的错误。
您最有可能通过file://
URIscheme在本地文件上使用此方法,该scheme不能设置Cookie。 把它放在本地服务器上,这样你就可以使用http://localhost
。
我在本地开发HTML5时也遇到了这个问题。 我有图像和getImageData函数的问题。 最后,我发现可以用–allow-file-access-from-file命令开关来启动chrome,这样可以摆脱这种保护安全性。 唯一的问题是它使你的浏览器不太安全,你不能有一个chrome实例的标志和另一个没有标志。
您也可以通过用内联Base64表示replace图像来“解决”这个问题:
img.src =“data:image / gif; base64,R0lGODlhCwALAIAAAAAA3pn / ZiH5BAEAAAEALAAAAAALAAsAAAIUhA + hkcuO4lmNVindo7qyrIXiGBYAOw ==”;
有用的,当你不打算在网上发布的页面,而是只在本地机器上使用它。
面对与JavaScript webworkers玩相同的情况。 不幸的是,Chrome不允许访问存储在本地文件中的javascript工作人员。
下面一种使用本地存储的解决方法是使用--allow-file-access-from-files
(最后是s
)运行Chrome,但只允许使用一个Chrome实例,这对我来说不是太方便。 由于这个原因,我使用Chrome Canary,允许文件访问。
BTW在Firefox中没有这样的问题。
如果您尝试使用数据URIscheme创buildWeb Worker,则会popup此错误消息。
var w = new Worker('data:text/javascript;charset=utf-8,onmessage%20%3D%20function()%20%7B%20postMessage(%22pong%22)%3B%20%7D'); w.postMessage('ping');
根据标准不允许: http : //www.whatwg.org/specs/web-apps/current-work/multipage/workers.html#dom-worker
使用历史API时,我遇到了这个问题。
window.history.pushState(null, null, URL);
即使使用本地服务器(本地主机),也要将“http://”添加到您的URL中,以便您具有类似于:
http://localhost...
我并不是完全乐意通过–allow-file-access-from-file解决scheme,因为我使用Chrome作为我的主要浏览器,对于我打开的这个漏洞并不满意。
现在我使用加纳利(铬testing版)为我的发展与旗帜上。 而我的真正的博客仅仅是Chrome版本:两个浏览器不共享标志!
如果在获得许可之前使用新的(仅限于webkit)通知function,还可能会收到此错误。
第一次运行:
<!-- Get permission --> <button onclick="webkitNotifications.requestPermission();">Enable Notifications</button>
后来运行:
// Display Notification: window.webkitNotifications.createNotification('image', 'Title', 'Body').show();
请求权限function需要由用户引起的事件触发,否则不会显示。
当我使用ASP.NET MVC返回一个FileResult时,我在移动Safari中遇到了这个错误。 所以,
return File(returnFilePath, contentType, fileName);
会给移动Safari的错误,在哪里
return File(returnFilePath, contentType);
不会。
我甚至不记得我为什么认为我在做什么是一个好主意。 试图聪明我猜。