示例路径:
/foo/boom%2Fpew/bar/
做urldecode / returns /,这是文件夹分隔符.
显然,这样做看起来不是一个好主意,但我对它可能导致的问题感兴趣.
另外,同样的问题也适用于其他字符,如#? ?是否可以在路径中允许它们的百分比编码版本?
最佳答案 /字符在URL中的某些上下文中保留,百分比编码可能会更改其含义.在这种情况下,/是路径部分的段之间的分隔符(不是“文件夹”;它完全取决于服务器将段映射到文件夹名称或其他东西或只是将路径部分视为不可分割),而/不是;它代表/作为细分市场的一部分.这实际上导致的原因取决于解释URL的服务器或其他软件.
参考:STD 66又名. RFC 3986.