子域上的javascript pushState抛出异常

Don*_*nMB 9 javascript

在我的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解析了我的子域名.也许它与此有关?

Don*_*nMB 2

事实证明,推动额外/解决了这个问题。

改变了这个

window.history.pushState('','',slug);
Run Code Online (Sandbox Code Playgroud)

对此

window.history.pushState('','','/'+slug);
Run Code Online (Sandbox Code Playgroud)