错误为SecurityError: DOM Exception 18
,它发生在replaceState @ https://connect.facebook.net/en_US/fbds.js第9行,位置2343
我们使用hello.js
进行facebook登录似乎访问replaceState
时出现问题,并且:
我无法重现它,我们有客户端错误报告,我看到这些错误爆发来来去去。
问题是,是否有人经历并解决了这个问题?
答案 0 :(得分:1)
我们在过去的几天里一直在使用JQuery mobile中的replaceState。
https://forums.developer.apple.com/thread/36650
<强>摘要强>
一个简单的复制案例,它在Safari控制台中提供了dom异常18:
for (var i=0 ; i<=100; i++) { window.history.replaceState(null, null, "http:/www.apple.com/"); }
Apple的回应:
此问题的行为基于以下内容:这是通过 设计。我们在iOS中修复了一个滥用的安全漏洞 pushState的/ replaceState。
解决强>
对我们来说,解决方案只是从JQuery移动框架中删除违规行:
window.history.replaceState( state, state.title || document.title, href );
我很欣赏这可能对您的案件没有帮助,但至少它可能有助于解释您所看到的行为。
答案 1 :(得分:0)
尚未知道解决方案(除了更新)。
WebKit错误跟踪器:
PouchDB GH问题:
答案 2 :(得分:0)
Safari设置为阻止cookie(和其他存储)。
设置&gt; Safari&gt;阻止Cookie&gt; '永远允许'
另请参阅:https://apple.stackexchange.com/questions/125584/broken-safari-dom-exception-18