代码之家  ›  专栏  ›  技术社区  ›  Jon Winstanley

处理多个搜索参数和运算符的最佳URL策略是什么?

  •  1
  • Jon Winstanley  · 技术社区  · 15 年前

    多参数搜索

    在我的应用程序中,我希望允许用户根据几个参数进行复杂的搜索,使用类似于GMail功能的简单语法,当用户可以搜索 “收件箱:未读” 等。

    但是,GMail会用这些信息发一篇文章,我希望表单是GET,这样信息就在搜索结果页面的URL中。

    因此,我需要在URL中格式化参数。

    要求:

    • 保持URL尽可能干净
    • 避免使用无效的URL字符,如方括号
    • 允许大量搜索功能
    • 以后可以添加更多功能。

    我知道StackOverflow允许用户通过 多个标记 以这种方式:

    不过,我也希望允许用户使用多个附加参数进行搜索。

    初步设计

    我的设计目前使用的网址如下:

    我打算在 search 参数,然后决定如何构造我的搜索查询。

    有没有人看到像这样的URL参数在网站上实现得很好?

    如果是,哪一个做得最好?

    1 回复  |  直到 7 年前
        1
  •  1
  •   Phil Strong    15 年前

    你现在所拥有的并不是一个糟糕的开始。

    需要记住的是,IE中URL的长度限制为2000个字符。在搜索引擎优化、可读性和简洁性之间的战斗中,请记住这一点。

    我不知道这个竞技场有什么超出常识的标准,你似乎已经掌握了。

    另一件要记住的事情是,大多数搜索引擎使用标准的url参数,例如? http://www.google.com/search?hl=en&source=hp&q=donkeys+for+sale&aq=f&aqi=g10&aql=&oq=&gs_rfai= 这有一个很好的原因,即与url编码有关,并允许在搜索栏中使用非传统字符。

    因此,虽然漂亮的url很好,但它们在这里失败的原因有很多