我的网址很长,带有多个值。

示例1: 通用标签

我的变量搜索区域仅包含4个数字(例如4000、5000),但可以包含很多数字。现在,我通过使用;作为分隔符在URL中将它们分开。尽管如示例1所示,被转换成%3B。这使我相信这是一个不好的符号。

什么是最好的URL分隔符?

有帮助吗?

解决方案

根据 RFC1738 的说法,有效的URL只能包含字母a - z ,加号( + ),句点和连字符(-)。

通常,我会加上加号来分隔您的搜索区域。因此,您的网址将变为 http:// www.domain.com / list?seach_type= 0& search_period= 1&search_min= 3000&search_max= 21000&search_area= 6855 + 7470 + 7700 + ...

-编辑-

正如GinoA指出的,我误读了该文档。因此,“ $-_.+!*'(),”也是有效的字符。我仍然会使用+号。

其他提示

月泪,我认为您误读了链接的文档。该限制仅适用于URL的“方案”部分。如果是WWW URL,则为“ http”。

文档的下一部分继续说:

因此,只有字母数字,特殊字符“ $ -_。+!*'()”和 可以使用用于保留目的的保留字符 在URL中未编码。

我个人使用逗号(,)。但是,加号(+)和破折号(-)也是合理的选择。

顺便说一句,该文件还提到在某些方案中保留了分号(;)。

如果只有数字要分隔,则可以选择很多分隔符。例如,您可以选择任何字母。

可能是一个不错的选择。它将被转换成URL中的+字符,因此比字母更具可读性。

示例:search_area=4000+5000+6000

当内容类型是application / x-www-form-urlencoded(HTML表单的标准)时,

“ +”将被解释为空格“”。这可能是由您的服务器软件处理的。

我更喜欢“!”。它没有经过URL编码(至少在Chrome中没有),并且在典型情况下会保留“ +”作为实际空格字符。

我参加聚会很晚,但是有效的查询字符串可以重复变量,所以不用... 通用标签

...您也可以使用... 通用标签

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top