当我以另一种方式将历史记录推送到浏览器时:
window.history.pushState(
{
some_safe_data: data
},
'some secure title',
'//' + translation + '/' + book + '/' + chapter + '/'
)
说我SecurityError: The operation is insecure
。问题出在'//'中。当我尝试以一个斜杠推送URL时-它起作用。当我添加一个新的-它给我一个错误。
为什么两个斜杠不安全?
新URL可以是与当前URL起源相同的任何URL。相反,仅当您仅修改哈希时,设置window.location可使您位于同一文档。