Chr*_*ian 35 javascript uri malformed decodeuricomponent
我在Chrome的控制台中输入了以下内容:
decodeURIComponent('a%AFc');
Run Code Online (Sandbox Code Playgroud)
a0xAFc它导致了一个URIError异常(格式错误的uri),而不是导致它.
我听过几个借口为什么这可能,但我不明白为什么?
decodeURIComponent()特别是该函数应该解码数据,而不是验证URI.
Jui*_*ter 41
%AF不是自己的角色,而是Unicode sequence(MACRON - %C2%AF)的一部分.
%AF不是由encodeURIComponent类似的东西产生的escape,所以它可以被解码unescape.
你可能需要的是什么 decodeURIComponent('%C2%AF')
这可能适用于也可能不适用于其他人的情况,但这就是为我所做的,所以我想我会分享。我将大量文本文件上传和下载到自定义 CMS。源代码中
的 “%”符号对我造成了严重破坏。
// send to server
content = content.toString().replace(/%/g,'~~pct~~'); // ~~pct~~ <-made up replacement
content = encodeURI(content);
// get back from server / database
content = decodeURI(content);
content = content.toString().replace(/~~pct~~/g,'%'); // globally restore '%'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
61533 次 |
| 最近记录: |