V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
lisisi
V2EX  ›  问与答

通过路由传参 example.com/path/abc 和 kv 传参 example.com/path?key=abc 有什么实质的区别吗?

  •  
  •   lisisi · 2021-03-26 23:11:49 +08:00 · 950 次点击
    这是一个创建于 1152 天前的主题,其中的信息可能已经有所发展或是发生改变。

    类似 stackoverflow 这样的网站,喜欢把文章标题直接放在 path 路由里面。如果换成 kv 传参,除了 url 看上去有区别,有什么实际的区别吗?比如,服务端匹配很长的 path 会有性能问题吗?用 kv 传参,可以把 path 精简。

    stackoverflow.com/questions/485/maintain-an-open-connection-for-each-client-does-this-scale
    
    对比
    
    stackoverflow.com/questions/485?subject=maintain-an-open-connection-for-each-client-does-this-scale
    
    4 条回复    2021-03-27 01:28:33 +08:00
    eason1874
        1
    eason1874  
       2021-03-26 23:30:56 +08:00   ❤️ 1
    负责路由功能的网址内容,要么都是 path,要么都是 query,一半 path 一半 query 很奇怪,处理起来也麻烦。

    我喜欢用 path 定位内容,因为还有很多地方要用 query,比如 utm_ 统计系列。如果用 query 负责路由,那转发到后端的路由 key 还要专门从 query 里提取,如果需要 301 还要重写包装 query,太麻烦。用 path 就没有这些问题。

    几百长度的 path 不至于有性能问题,有没有影响主要取决于你配置了多少匹配规则吧
    eason1874
        2
    eason1874  
       2021-03-26 23:34:22 +08:00
    像 stackoverflow 这种 path 后面的文章名,主要考量应该是 URL 可读性,方便人类解读和搜索引擎解读,只定位资源的话有问题 ID 已经够用了
    Tianao
        3
    Tianao  
       2021-03-27 01:19:23 +08:00 via iPhone
    CDN / 负载均衡 / 缓存等对他们的处理可能不一样(当然这都可以调)。
    also24
        4
    also24  
       2021-03-27 01:28:33 +08:00
    有一个相关联的词叫做『伪静态』 ,当年可是必备功能。
    (注:狭义上的伪静态,后缀一般是 .html 等,此处不纠结)


    当年搜索引擎比较傻(也可以说聪明过头),大概率无视 query 参数,或者权重偏低,站长们为了有更好的收录效果,就要花心思配置好伪静态的规则。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1285 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 17:54 · PVG 01:54 · LAX 10:54 · JFK 13:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.