NodeJs中的express框架获取http参数

最近本人在学习开发NodeJs,使用到express框架,对于网上的学习资料甚少,所以本人会常常在开发中作一些总结。 express获取参数有三种方法:官网介绍以下html

Checks route params (req.params), ex: /user/:id
Checks query string params (req.query), ex: ?id=12
Checks urlencoded body params (req.body), ex: id=

一、例如:127.0.0.1:3000/index,这种状况下,咱们为了获得index,咱们能够经过使用req.params获得,经过这种方法咱们就能够很好的处理Node中的路由处理问题,同时利用这点能够很是方便的实现MVC模式;node

二、例如:127.0.0.1:3000/index?id=12,这种状况下,这种方式是获取客户端get方式传递过来的值,经过使用req.query.id就能够得到,相似于PHP的get方法;  三、例如:127.0.0.1:300/index,而后post了一个id=2的值,这种方式是获取客户端post过来的数据,能够经过req.body.id获取,相似于PHP的post方法;express

下面举例介绍下这三个方法: 以下一个test.html代码app

var app = require('express').createServer();  
  
app.get('/:key', function(req, res){  
  console.log(req.params.key);//输出index  
  console.log(req.query.login_name);//输出表单get提交的login_name  
  res.send('great you are right for get method!');//显示页面文字信息  
});  
app.post('/:key', function(req, res){  
console.log(req.params.key);//输出index  
console.log(req.body.login_name);//输出表单post提交的login_name  
res.send('great you are right for post method!');//显示页面文字信息</pre>});
app.listen(3000);  

以后运行node index.js就能够看到本效果,固然前提是你要先访问test.html,至于如何经过express访问一个html文件我就不详细描述了,能够参考以下代码:
global.fs=require('fs');          
var realpath = VIEW + "test.html";  
var file = fs.readFileSync(realpath);  
res.end(file);
相关文章
相关标签/搜索