我们应该使用site.com/#!/blog还是site.com/#!blog
我知道这没有实际的区别,但是作为一个url开发者社区,仍然应该有一个常规的标准,这样用户就可以很容易地记住url。如果没有已经建立的标准,理想情况下,有人会发布一个支持一个的答案,另一个人会发布另一个支持另一个的答案,这样一个人就会比另一个人获得更多的选票。
就我个人而言,我更喜欢:site.com/#!blog,因为它更短。然而,我已经看到许多其他网站使用另一种变体。
顺便说一下,如果你的第一反应是指示我们不要使用hashbang,那么这个问题不适合你,请别管我们。
发布于 2011-03-24 13:15:36
您忘记了site.com#!blog的第三个选项。
如果你想得到所有的语义,问题就变成了“在url中'/‘代表什么?”
[site.com#!blog]是否代表物理目录?
导航文件系统时,文件夹之间用斜杠分隔。这也是web上的自然行为,但路由已经改变了这一点。
[site.com/#!blog]是否表示内容的层次结构?
of引入了内容的层次结构。查询变量不是问号和&号,而是用斜杠分隔,根据开发人员认为重要的内容创建一个深度链接结构。
它是否代表了你的url中上下文的分离?[site.com/#!/blog]
堆栈溢出就是我所说的“上下文分离”的一个很好的例子。这个问题的网址是http://stackoverflow.com/questions/5414972/hashbang-slash-or-no-slash/。问题ID和问题标题之间没有斜杠,因为名为5414972的文件夹中有一个文件。只有一个ID为5414972的问题,所以层次结构也不需要这个问题。有意识地选择使用斜杠来分隔ID和名称,而不是使用任何其他分隔符,如连字符、下划线,甚至根本不使用分隔符。不是斜杠的分隔符可能会使这两个变量类似于一个。通过将斜杠放在hash bang的两边,url变成:
url prefix > ajax crawling notation > the specific page
而不是
url prefix > ajax crawling notation and the specific page。
取决于你的回答是什么(是的,这是主观的),你会得到你的答案。我认为,当我们还不能决定我们应该如何格式化日期时,试图让整个世界就这一标准达成一致是有点愚蠢的。
至于最后关于对"hash bang“的不满的评论,我认为这是你的想象。当"hash bang“听起来和"flash bangs”如此相似时,谁会不喜欢它们呢?
发布于 2011-03-24 13:16:13
一个斜杠就像一只蚂蚁:当你看到它时,你希望看到另一个。
如果在我们的未来有一个site.com/#!/blog/latest,site.com/#!/blog/archive/october或者类似的东西,site.com/#!/blog是正确的。
只有我的0.014185欧元。
发布于 2011-03-24 13:12:45
这取决于你在做什么。如果您基本上只是试图实现站点结构,那么在/#!/blog中包含根/是有意义的。弹出窗口、跳转选项卡等都可以使用其他结构。
我不认为这应该有一个常规的标准。像mod_rewrite这样的工具存在是有原因的:对于无限的问题有无限的解决方案,而试图标准化像URL这样复杂的东西是不可能的。
此外,对于那些想知道hashbang的合法使用是什么的人:http://code.google.com/web/ajaxcrawling/
https://stackoverflow.com/questions/5414972
复制相似问题