2013-07-15 18 views
2

如何获得请求字符串到一个可行的,如果有人去www.mypage.com/yo,我怎么能得到节点返回“哟”变量?如何返回url中请求的字符串?

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"); 

回答

2

request.url包含请求的URI:

var stringrqeuested = request.url; // /yo 

如果你只想要 “哟”,你可以删除这样的斜线:

var stringrqeuested = request.url.substr(1); // yo 

request.url包含也是查询字符串例如/yo?a=b&c=d。如果你不希望出现这种情况,你需要解析的网址:

var stringrequested = require('url').parse(request.url).pathname; // /yo 
var stringrequested = require('url').parse(request.url).pathname.substr(1); // yo 

下面是来自documentation一个例子。

node> require('url').parse('/status?name=ryan', true) 
{ href: '/status?name=ryan', 
    search: '?name=ryan', 
    query: { name: 'ryan' }, 
    pathname: '/status' } 
0

切断URL的第一个字符(/):

request.url.substr(1) 
相关问题