如何在Express 4.0中使用request.query时转义特殊字符

时间:2016-09-20 10:08:24

标签: node.js api express

我在Express 4中运行的API服务器使用 request.query 来读取所有参数。

app.get('/api', function(req, res) {
    console.log(req.query.search);
});

请求如下

http://localhost:8080/api?id=123&search=node js&lang=en

request.query.search 的值是“node js”,即空格。 request.query是否将空格转换为%20等特殊字符?或者我错过了什么?

1 个答案:

答案 0 :(得分:3)

在查询字符串中传递值时,必须使用escape()方法

var url="http://localhost:8080/api?id=123&search="+escape("node js")+"&lang=en";

当你在nodeJS中检索值时,你必须使用unescape()方法

var search= unescape(request.query.search);
相关问题