在URL中传带百分号%的参数的两种⽅法:直接传编码或使⽤
encodeURI
有个需求要在前端发请求,且上送的参数写在了URL⾥⾯。有个参数值就是“%”。如果直接上送送%作为参数,URL⼤概长成这样:
上⾯的URL本意是要上送⼀个参数paraB,这个参数的值就是%,但是URL中百分号%本⾝就是⽤来对不安全字符进⾏编码的⼀个特殊字符,如果你需要在URL中传递⼀个带%的参数,那么这个%就需要进⾏转义或编码,以防⽌解析URL时造成歧义。
那么在URL中传递%可以有两种处理⽅法:
1.直接传⼀个%对应的编码
%对应的编码为%25,那么上⾯的URL就可改写为
2.如果你并不能记得这些不安全字符的对应编码,也可以使⽤JavaScript的encodeURI来处理你的URL,但是要注意encodeURI并不会对在URL中有特殊含义的字符进⾏编码:
那么处理⽅式就是
var finalURL = encodeURI("../../xxxServlet/xxxService?paraA=123¶B=%¶C=246")
然后就得到了
殊途同归。
url编码处理参考资料
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论