我正在研究ROR网络应用程序.我的网页网址如下所示 –
http://dev.ibiza.jp:3000/facebook/report?advertiser_id=2102#/dashboard
在这里我理解advertiser_id是2102但我无法理解#/ dashboard指向的是什么?
解决方法
#符号后面的URL部分通常不会在页面请求中发送到服务器.如果您打开Web检查器并观察页面请求,您将看到#/ dashboard部分根本不包含在请求中.
在普通(基本HTML)网页上,#符号可用于链接到页面中的某个部分,以便浏览器在页面加载后跳转到该部分.
在花哨的javascript密集的Web应用程序中,通常使用#符号,后跟更多的URL路径,例如www.example.com/some-path#/other-path/etc,URL的other-path / etc部分不是服务器可以看到,但Javascript可以在浏览器中读取,并且可能根据该URL路径显示不同的内容.
因此,在您的情况下,URL的第一部分是对服务器的请求:
http://dev.ibiza.jp:3000/facebook/report?advertiser_id=2102
并且URL的第二部分可以是Javascript在加载后显示页面的特定视图:
#/仪表板
#符号还用于创建Fragment Identifier,并且通常还用于链接到网页中的特定内容(例如,使浏览器跳转到页面上的特定部分).
正如其他人所提到的,这有SEO的含义.为了索引诸如此类的页面,您可能必须采用不同的技术来允许搜索引擎访问“#符号后面”的内容.