时间:2021-05-26
试验了一下python的urllib库以及js 的 encodeURIComponent 均不会替换。空格encode也是替换成了 '%20' 。python提供了urllib.quote_plus, urlib.unquote_plus来处理空格->加号,看起来还是比较合理的。
查了一下 RFC 3986: 有下面一段
Scheme names consist of a sequence of characters beginning with a letter and followed by any combination of letters, digits, plus ("+"), period ("."), or hyphen ("-").
RFC 2396 有下面的一段
The plus "+", dollar "$", and comma "," characters have been added to those in the "reserved" set, since they are treated as reserved within the query component.
表示加号已经是url的保留字了,不需要转义。
然后html4文档里才有关于加号的转义:
application/x-www-form-urlencoded
Forms submitted with this content type must be encoded as follows:
Control names and values are escaped. Space characters are replaced by`+', and then reserved characters.....
声明只有content-type为application/x-www-form-urlencoded时才会对+做转义。
又翻了下php的文档,发现有一个
rawurlencode() - URL-encode according to RFC 3986
也就是php又搞了rawurlencode和rawurldecode把标准实现了。。。。
不能反一下么,毕竟大部分人应该都会用urlencode。php真是蛋疼啊。。。。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
如果直接使用base64_encode和base64_decode方法的话,生成的字符串可能不适用URL地址。下面的方法可以解决该问题:URL安全的字符串编码:
解决方法,用以下方法加载js:复制代码代码如下:varloadScript=function(url,callback,charset){varhead=doc
numpy出错解决方案Problem:howtoimportnumpyinsubdirectory?Importerrorofnumpywithinsu
本文实例讲述了php使用json_decode后数字对象转换成了科学计数法的解决方法。分享给大家供大家参考,具体如下:问题:今天在搞网页游戏在facebook积
本文总结分析了.Net获取URL中文参数值的乱码问题解决方法。分享给大家供大家参考,具体如下:解决方法:1.设置web.config文件2.传递中文之前,将要传