问题: 在HTML5历史记录API pushState
的帮助下,是否可以在没有服务器渲染的情况下对SPA进行抓取?
我发现了矛盾的含义。你能支持或反驳其中一个吗?
YES, it's possible to make SPA crawlable w/o server rendering。
我发现的唯一解释是 - 当Google抓取工具经过<a href="site.com/go">
时,它会订阅onpopstate
并等待您触发HTML5历史记录pushState
。获得所有异步内容后,您会触发pushState
并且抓取工具开始抓取。
Google真的知道如何订阅onpopstate事件吗?
否,这是不可能的。我得出了同样的结论,this article也是如此。它表示pushState
可替代hashbangs,以便为用户和抓取工具制作相同的网址。
P.S。如果pushState
无法实现,还有其他可接受的方法吗?