在我的js文件中:
window.history.pushState('','',slug);
Run Code Online (Sandbox Code Playgroud)
我知道pushState方法的安全限制:
新URL必须与当前URL的源相同; 否则,pushState()将抛出异常.
但是,在我的网站上我使用了一个域:www.mydomain.compushState工作正常.但是当我在我的子域上调用该方法时subdomain.mydomain.com,它会抛出一个奇怪的异常:
未捕获的SecurityError:无法在"历史记录"上执行"pushState":无法在原点为" http://subdomain.mydomain.com " 的文档中创建URL为" http://0.0.7.210/ "的历史状态对象.
我把IP 0.0.7.210称为内部内容但我在开发+实时环境中得到了这个例外.
顺便说一句,我确实通过Route53解析了我的子域名.也许它与此有关?
事实证明,推动额外/解决了这个问题。
改变了这个
window.history.pushState('','',slug);
Run Code Online (Sandbox Code Playgroud)
对此
window.history.pushState('','','/'+slug);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
485 次 |
| 最近记录: |