http://www.w3school.com.cn/ta...
中url编号中有写到将:
号转成%3a
,但是:
1, 浏览器中输入www.baidu.com?x=a b
,会被转成https://www.baidu.com/?x=a%20b
;但是输入wwww.baidu.com?x=a:b
则不会转码。
2, decodeURL("%3a")不会做转化
3, 同时我查了资料https://www.baidu.com/s?ie=ut... 中有提到:
冒号是合法字符。
请问这个矛盾如何解释?如何将Node.js收到的%3a
转成:
冒号?(如果不用replace()的话)
encodeURI
该方法的目的是对 URI 进行完整的编码,因此对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的:;/?:@&=+$,#如果 URI 组件中含有分隔符,比如 ? 和 #,则应当使用 encodeURIComponent() 方法分别对各组件进行编码。