GET请求的参数在URL中,在原生Node中,需要使用url模块来识别参数字符串。在Express中,不需要使用url模块了。可以直接使用req.query对象。
● POST请求在express中不能直接获得,必须使用body-parser模块。使用后,将可以用req.body得到参数。但是如果表单中含有文件上传,那么还是需要使用formidable模块。
Node中全是回调函数,所以我们自己封装的函数,里面如果有异步的方法,比如I/O,那么就要用回调函数的方法封装。
错误:
1res.reder("index",{
2 "name" : student.getDetailById(234234).name
3});
4
5
正确:
6
7student.getDetailByXueHao(234234,function(detail){
8 res.render("index",{
9 "name" : detail.name
10 })
11});
12
1
12.js
/**
* Created by Danny on 2015/9/22 14:37.
*/
var express = require("express");
var app = express();
app.get("/",function(req,res){
console.log(req.query);//识别参数字符串
res.send();
});
app.listen(3000);
13.js
/**
* Created by Danny on 2015/9/22 14:37.
*/
var express = require("express");
var bodyParser = require('body-parser')
var app = express();
//模板引擎
app.set("view engine","ejs");
app.get("/",function(req,res){//http://localhost:3000/
res.render("form");
});
//bodyParser API,使用中间件
app.use(bodyParser.urlencoded({ extended: false }))
//post请求
app.post("/",function(req,res){
console.log(req.body);//req.body得到参数,{ name: 'ssss', age: 'vdvdvdv' }
});
app.listen(3000);
本文转自农夫山泉别墅博客园博客,原文链接:http://www.cnblogs.com/yaowen/p/7039991.html,如需转载请自行联系原作者