我正在创建的一个小网站(更像是摆弄)使用 AJAX 加载每个页面。以前我正在更改 url 的哈希,这很好用但很丑陋,用户可以刷新页面,它会留在同一页面上。
现在我已经切换到在 JS History API 中使用 pushState,它看起来好多了,并且后退和前进工作,但刷新没有。例如:
转到:http://example.com/page2
转到 404,因为没有真正的页面称为第 2 页。但是,如果我单击使用 pushState 方法更改 url 的按钮,它应该可以正常工作。
如何使用新的 History API 允许刷新和永久链接?
(以及搜索引擎如何处理这个问题,因为谷歌必须创建一种索引哈希 url 的方式,通过让开发人员切换到#!
,他们是否有可能在未来为历史 API 做类似的事情?)