【问题标题】:Why passing p=3+3 by GET results in 3 3 and by POST is 3+3?为什么通过 GET 传递 p=3+3 会导致 3 3 而通过 POST 是 3+3?
【发布时间】:2016-10-31 03:48:59
【问题描述】:

基本上这就是问题所在,当我通过不同的方法发送相同的参数时,我会得到不同的值。

【问题讨论】:

    标签: php html forms post get


    【解决方案1】:

    这是因为+ 是 HTTP 中空格字符的 URL 编码。当您使用GET 时,服务器会先解析 URL,然后再将数据交给您的代码。 POST 的处理不同,不包括将 + 转换为空格。

    如果您想实际发送+ 作为GET 中的数据,请将其编码为%2B。将+ 转换为空格的相同解码过程将%2B 转换为+。另请查看encodeURI() 函数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-01-24
      • 1970-01-01
      • 2022-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-14
      • 1970-01-01
      相关资源
      最近更新 更多