【问题标题】:Allow querystring to have two params through ``?``允许查询字符串通过 ``?`` 有两个参数
【发布时间】:2013-10-10 09:53:30
【问题描述】:

查询字符串如:http://example.com?id=12345?fileName=test.csv 会是错误的吗?

POST 有效,但是否一致?

【问题讨论】:

    标签: javascript parameters query-string


    【解决方案1】:

    是的,这是错误的,应该使用&完成多个参数,如下所示:

    http://example.com?id=12345&fileName=test.csv
    

    This article 有话要说:

    W3C 建议所有 Web 服务器都支持分号分隔符 除了与号分隔符[6] 以允许 HTML 中 URL 中的 application/x-www-form-urlencoded 查询字符串 文档,而无需实体转义 & 符号。

    请注意,它只提到了分号和 & 符号,没有提到问号。这也意味着分号只是标准和符号分隔符之上的建议。

    还值得考虑的是,由于 & 符号被认为是标准,因此需要拆分查询字符串的开发人员可能会在 & 上拆分它,甚至可能没有意识到应该考虑其他分隔符。这也可能适用于任何需要操作查询字符串的第三方库。

    【讨论】:

    • @Kosmetika:处理请求的技术是什么?它可能不适用于所有环境,当然也不是推荐的方法(找到好的我会在链接中编辑)
    猜你喜欢
    • 1970-01-01
    • 2014-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多