URL参数名称中允许使用哪些字符有正式限制吗?
我一直在阅读RFC3986(“统一资源标识符(URI):通用语法”,但没有明确的结论。
我知道有实际的局限性,但实际上禁止这样做:
带有\ funny = some_value]的参数>只要我能正确逃脱:
只要我能正确逃脱:
param%20with%1cfunny%3cchars%3e = some_value
URL参数名称中对哪些字符有任何正式限制?我一直在阅读RFC3986(“统一资源标识符(URI):通用语法”),但没有明确的定义...
URI规范中对转义参数名称没有限制。但是,您使用的服务器端软件可能会有限制。如果您使用“自制”脚本解释URI,则尤其如此。
您还应该阅读RFC2396。它似乎比RFC3986更具信息性。
URL有保留字符,但是只要您转义(urlencode),就可以了。
每RFC 2396,参数名称和值可以包含大写/小写字母,十进制数字和-_。!〜*'()字符。其他一切都需要逃脱。