以下をノードに投稿すると(簡略化された例):
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 コード:
app.post('/action', function (request, response) {
var file = request.body['path'];
console.log(file);
console.log(decodeURIComponent(file));
});
次の出力が得られます。
E%3A%0Coo%08ar.baz
E:♀oar.baz
これを正しくデコードするにはどうすればよいですか?