前言
SPA (Single Page Application) 在web 2.0时期成长迅速,当然SPA应用的流行自然离不开前端Route的兴起,现在流行的MVVM框架都是由前端控制路由分发,用AJAX 和 前端Route能带给用户很好的体验,当然,对于SEO也是一场莫大的灾难,因为AJAX 应用不会留下历史记录(history)。今天来浅谈一下因SPA应用而引发的Hash 和 Hashbang
Hash
web里的hash不同于其他高级语言中的hash(散列),其他高级语言中的Hash为一种数据结构,而浏览器里的hash是url #后面的内容。
例如:
https://www.baidu.com#woshihash
当然,在访问的过程中会经历URL转码。
#后面的东西能带给我们什么好处呢,最大的好处就是促使AJAX应用的兴起,因为hash的内容不会被提交。因此,我们在后端是不能直接拿到hash里的内容的。
AJAX应用
在AJAX应用中,页面获取数据都是用AJAX与后端进行交互,因此,整个页面都处于 “单页面”的状态,这样的话我们的页面也就无法进行前进和返回操作,幸运的是,由于h5的出现,提供了history的API,使我们