8121150
前端脚本: $.ajax({ type : 'POST', url : '/addattr', data : {"Action":"get","Name":"lulu"} }) 服务器端: app.post('/addattr', function(req, res){ console.log(req.body) });
前端脚本: $.ajax({ type : 'POST', url : '/addattr', data : {"Action":"get","Name":"lulu"} }) 服务器端: app.post('/addattr', function(req, res){ console.log(req.body) });
express4下用了router,不再用app
@ringtail 嗯?我是将所有路由写在routes.js文件中,比如: var site = require('./routes/site'); var cms = require('./routes/cms'); module.exports = function(app) { app.get('/', site.initIndex); app.get('/cms', cms.index); app.post('/addattr', function(req, res){ console.log(req.body) }); }
然后在app.js中引入,route(app);
请参考我的文章“使用express4.x版和Jade模板重写《nodejs开发指南》微博实例 ”, 网址:http://cnodejs.org/topic/53f23e198f44dfa35129c43b 前端我用的是jade模板生成的html: layout.jade的代码:
doctype html html head title= title link(rel='stylesheet', href='/stylesheets/bootstrap.css') link(rel='stylesheet', href='/stylesheets/style.css') link(rel='stylesheet', href='/stylesheets/bootstrap-responsive.css') script(src='/javascripts/jquery.js') script(src='/javascripts/bootstrap.js') body div.navbar.navbar-fixed-top div.narbar-inner div.container a(class='btn btn-navbar' data-toggle='collapse' data-target='.nav-collapse') span.icon-bar span.icon-bar span.icon-bar a(class='brand' href='/') Microblog div.nav-collapse ul.nav li.active a(href='/') 首页
- if (!user)
li
a(href='/login') 登录
li
a(href='/reg') 注册
- else
li
a(href='/logout') 退出
div#container.container
注册页面reg.jade的代码,使用form,直接post到当前页
extends layout
block content
index.js中的代码片段,接收并解析post
router.post("/reg", checkNotLogin); router.post("/reg", function(req, res) { console.log(req.body['password']); console.log(req.body['password-repeat']); if(req.body['password-repeat'] != req.body['password']){ req.flash('error', '两次输入的密码不一致'); return res.redirect('/reg'); } var md5 = crypto.createHash('md5'); var password = md5.update(req.body.password).digest('base64');
var newUser = new User({ name: req.body.username, password: password, }); //检查用户名是否已经存在 User.get(newUser.name, function(err, user) { if (user) { err = 'Username already exists.'; } if (err) { req.flash('error', err); return res.redirect('/reg'); }
newUser.save(function(err) { if (err) { req.flash('error', err); return res.redirect('/reg'); } req.session.user = newUser; req.flash('success', req.session.user.name+'注册成功'); res.redirect('/'); });
}); });
没有加body-parser吧