Javascript decodeURI(组件)格式错误的uri异常
Javascript decodeURI(Component) malformed uri exception
我在Chrome的控制台中输入了以下内容:
decodeURIComponent('a%AFc');
它没有导致a0xAFc
,而是导致了URIError异常(uri格式错误)。
我听过几个借口,为什么这可能是可能的,但我不明白的是为什么?
decodeURIComponent()
函数尤其应该对数据进行解码,而不是验证URI。
- 维基百科:百分比编码
- RFC3986:URI通用语法(2005)
%AF
本身不是一个字符,而是Unicode序列(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 '%'
相关文章:
- Node.js v6.2.0类扩展不是函数错误
- Soundcloud api"未捕获的类型错误:无法读取属性'uri'“未定义”;
- Soundcloud API错误NS_Error_DOM_BAD_URI:拒绝访问受限URI(JavaScript)
- 错误的请求,错误的URI 400错误
- 错误:未捕获的异常:无效的市场uri
- 解码URI抛出错误“URI格式不正确”
- 将 png 图像从 JavaScript 传递到 PHP(错误:请求 URI 太大)
- 使用AngularJS加载动态指令-错误:访问受限URI被拒绝
- 对复杂字符串进行url解码;URI格式错误”;错误
- 使用数据URI无法显示多个图像:静默浏览器错误
- Javascript decodeURI(组件)格式错误的uri异常
- 节点 - npm 请求中的 uri 错误无效
- 通过“(“;和“)”;通过一个URI会导致403错误,我该如何对它们进行编码呢?
- 处理Bootstrap表中URI的错误
- 如何处理“访问受限制的URI被拒绝”;JavaScript在使用XMLHttpRequest时出现错误
- 错误:访问受限的URI被拒绝-同源策略
- AngularJs:发送到远程服务器的表单给出错误:访问受限URI被拒绝
- 错误:";访问受限URI被拒绝"
- 如何防止“URIError:格式错误的 URI 序列”从样式百分比
- 使用POST方法的AJAX函数会创建以下错误.错误:返回状态码414请求uri太大