首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >decodeURIComponent损坏路径

decodeURIComponent损坏路径
EN

Stack Overflow用户
提问于 2012-11-20 02:04:09
回答 1查看 602关注 0票数 1

当我将以下内容发布到node (简化示例)时:

代码语言:javascript
复制
var xhr = new XMLHttpRequest();
xhr.open("POST", "http://localhost:3000/action");
xhr.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
xhr.send(JSON.stringify({path:encodeURIComponent("E:\foo\bar.baz")}));

node.js代码:

代码语言:javascript
复制
app.post('/action', function (request, response) {
    var file = request.body['path'];
    console.log(file);
    console.log(decodeURIComponent(file));
});

我得到以下输出:

代码语言:javascript
复制
E%3A%0Coo%08ar.baz
E:♀oar.baz

我怎么才能正确解码呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-20 02:24:28

您在路径中编码special characters,因为反斜杠是为转义保留的:

\f Form feed

\b Backspace

经过编码后,这些内容将变为:

%0C

%08

来自MDN

若要在字符串中包含文字反斜杠,则必须转义反斜杠字符

"E:\\foo\\bar.baz"

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13459515

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档