app.post(path, handler) : post方式访问path路径
app.put(path, handler) : put方式访问path路径
app.delete(path, handler) : delete方式访问path路径
app.all(path, handler) : 任何方式访问path路径
同时,我们也应该注意的是: /是表示根路径下,/user是表示user路径下,如果访问/user/login时,是直接访问/user/login路由的,前面的两个路由是不访问的。
// 根路径下的请求
app.get('/', function(req, res){
console.log('hello world');
res.send('hello world');
});// /user路径下的请求
app.get('/user', function(req, res){
console.log('user');
res.send('huser');
});
// /user/login下的请求
app.get('/user/login', function(req, res){
console.log('user/login');
res.send('user/login');
});
而且,path路径还可以通过字符串匹配和正则匹配的方式进行路由选择。
2.3 RES响应方法
我们在刚上面的例子中,使用
res.send()向页面中输出一段’hello world’的纯文本字符串,而且
res.send()也可以输出其他类型的数据,比如html字符串(浏览器可以解析),Buffer类型,Object类型,Array类型等。比如我们要输出一段html字符串。
var html = '<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Document</title>
</head>
<body>
<div>
<p style="color:#f00;">hello world</p>
<p><input type="text" /></p>
</div>
</body>
</html>';app.get('/', function(req, res, next){
res.send(html);
});
我们可以在浏览器上一个红色的hello world和一个文本输入框。但是若html的代码比较长,我们可以把这些代码都放到一个单独的html文件里,然后使用
res.sendFile()方法,将html文件里的内容输出到页面中。在根目录下创建一个index.html文件,把完整的html代码放进去,然后:
app.get('/', function(req, res, next){
res.sendFile('index.html');
});这样就能在浏览器中看到一个完整的页面了。
此外,res中还提供了一些别的方法供我们使用:
| 方法 | 描述 |
|---|---|
| res.download() | 下载文件。 |
| res.end() | 终结响应处理流程。 |
| res.json() | 发送一个 JSON 格式的响应。 |
| res.jsonp() | 发送一个支持 JSONP 的 JSON 格式的响应。 |









