2013-03-06 94 views
17

是否有关于何时使用散列参数,url params和vs路径的约定或最佳实践建议?哈希params vs url params,什么时候用哪个?

例如:

  • 散列PARAMS:stackoverflow.com/questions#q=13630937 &吨=散列-PARAMS-VS-URL-PARAMS
  • 网址参数:stackoverflow.com/questions?q = 13630937 & T =哈希PARAMS-VS-URL-PARAMS
  • URL路径:stackoverflow.com/questions/13630937/hash-params-vs-url-params

是否有安全,搜索引擎优化,可用性本每个人的乐趣或缺点或是风格问题?

回答

21

哈希参数对于单页JavaScript应用程序非常有用,它允许javascript向用户呈现应用程序状态的可共享url。这是首选,因为如果你有一个页面的JavaScript应用程序,并且用户通过ajax导航并加载更多内容并共享url,没有哈希或推送状态修改,接收内容的人将获得主页或启动状态。哈希参数可以轻松修改并通过javascript读取,无需重新加载页面。

散列参数通常只在客户端使用,散列参数不会传递给服务器......所以它们只对参数化客户端有用。

/users#!/13 

会加载用户的索引页,然后的JavaScript可以读取哈希

window.location.hash,并使之通过某种形式的客户端路由器,并进行适当的Ajax请求,并可能加载用户显示模板和推它到了最后。

Url params和url路径有些可以互换。人们通常使用的URL路径描述宁静的资源,如

/users/[:id] => /users/13 => /users?id=13 
/users/:id/posts => /users/13/posts 
/users/:user_id/posts/:id => /users/13/posts/22 
etc...... 

@Walter Tross,从SEO的角度做了一个很好的点。臃肿的URL或“URL参数”更容易被抓取工具索引,并且往往排名更高。

对于不适合在一个足智多谋的路线PARAMS我们把他们作为PARAMS

/users?sort=user_name&order=asc 
+1

路径和查询字符串(网址参数)不是但从 – 2013-03-20 15:41:07

+0

@WalterTross的SEO角度互换的,如果你愿意以更全面的解释路径和查询字符串参数WRT SEO之间的差异来添加另一个答案,这可能会有所帮助。 – 2013-03-20 19:56:34

相关问题