我应该在 URI 的查询字符串中编码参数名称吗?
Posted
技术标签:
【中文标题】我应该在 URI 的查询字符串中编码参数名称吗?【英文标题】:Should I encode names of parameters in a query string of a URI? 【发布时间】:2016-11-30 03:18:17 【问题描述】:我知道我需要在 URI 的查询字符串中对参数的参数进行编码,但是参数名称呢,它们是否也需要编码?
【问题讨论】:
我想不出需要对参数名称进行编码的原因。我正在为同样的问题而苦苦挣扎,到目前为止,我的搜索没有任何结果。 【参考方案1】:是的。查询字符串中的特殊字符在查询字符串中任何地方都有其特殊含义。
如果参数名称是foo=bar
,则?foo=bar=something
不会被解析为foo=bar
等于something
。
【讨论】:
“不会被解析” - 它取决于解析实现,不是吗(假设,解析实现可能会决定对于每个查询字符串参数都 @ 987654326@ 除了最后一个被忽略)?毕竟=
就是allowed unencoded in a query string。以上是关于我应该在 URI 的查询字符串中编码参数名称吗?的主要内容,如果未能解决你的问题,请参考以下文章