Node.js 如何返回url中请求的字符串?
如何将get请求字符串转换成一个可行的变量,例如,如果有人访问www.mypage.com/yo,如何让节点将“yo”返回到变量中Node.js 如何返回url中请求的字符串?,node.js,Node.js,如何将get请求字符串转换成一个可行的变量,例如,如果有人访问www.mypage.com/yo,如何让节点将“yo”返回到变量中 var http = require('http'); var server = http.createServer(function (request, response) { response.writeHead(200, {"Content-Type": "text/plain"}); var stringrequested = ?????? r
var http = require('http');
var server = http.createServer(function (request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
var stringrequested = ??????
response.end(stringrequested);
});
// Listen on port 8000, IP defaults to 127.0.0.1
server.listen(8000);
// Put a friendly message on the terminal
console.log("Server running");
request.url
包含请求的uri:
var stringrqeuested = request.url; // /yo
如果您只需要“yo”,可以删除前导斜杠,如下所示:
var stringrqeuested = request.url.substr(1); // yo
但是request.url
也包含查询字符串,例如/yo?a=b&c=d
。如果不希望这样,则需要解析url:
var stringrequested = require('url').parse(request.url).pathname; // /yo
var stringrequested = require('url').parse(request.url).pathname.substr(1); // yo
下面是一个例子
切断URL的第一个字符(
/
):
node> require('url').parse('/status?name=ryan', true)
{ href: '/status?name=ryan',
search: '?name=ryan',
query: { name: 'ryan' },
pathname: '/status' }
request.url.substr(1)