nodejs使用body-parser解析表单数据
来源:互联网 发布:网络语言暴力的案例 编辑:程序博客网 时间:2024/06/05 02:56
本例中运用到的框架包含有:express、html、body-parser、mongoose
前台运用了ejs模板引擎,后台nodejs用的express框架,数据库用mongoose操作mongodb,以及body-parser中间件解析表单数据,废话不多说,代码献上:
register.html main code:
<div class="box"> <form action="/" method="POST"> <ul> <li> <input type="text" placeholder="用户名" id="username" name="username"> </li> <li> <input type="password" placeholder="密码" id="userPwd" name="userpwd"> </li> <li> <input type="password" placeholder="重新输入密码" id="reUserPwd"> </li> <li> <input type="submit" value="注册" onclick="return checkLogin();"> </li> </ul> </form> <script type="text/javascript"> //表单提交验证 function checkLogin(){ var aa=document.getElementById('username'); var bb=document.getElementById('userPwd'); var cc=document.getElementById('reUserPwd'); if(aa.value=='' || aa.value==null){ alert('请输入用户名!'); return false; }else if(bb.value=='' || bb.value==null){ alert('请设置密码!'); return false; }else if(cc.value=='' || cc.value==null){ alert('请再次输入密码!'); return false; }else if(cc.value != bb.value){ alert('两次密码不一致!'); return false; }else{ return true; } } </script></div>
app.js main code:
// 模块依赖var express=require("express");var app=express();var bodyParser = require('body-parser');var path = require('path');var http = require('http');//静态文件设置app.use(express.static(path.join(__dirname, 'public')));//表单数据解析app.use(bodyParser.json());app.use(bodyParser.urlencoded({ extended: true }));//视图设置app.set('views', path.join(__dirname, 'views'));app.set('view engine', 'html');app.engine('html', require('ejs').renderFile); //路由配置var register = require('./routes/register');var login = require('./routes/login');var user = require('./routes/user');app.use("/", register);app.use("/", register);app.use("/login", login);app.use("/user", user);var server = app.listen(8081, function () { var host = server.address().address var port = server.address().port console.log('server start on 127.0.0.1:8081');})
register.js main code:
var express=require("express");var app = express();var router = express.Router();var user=require('../db/Shema');router.get('/', function (req, res) { // console.log(req); res.render('register',{title: '登录页'});})router.post('/', function (req, res) { var users = req.body; //打印表单数据 console.log(users); var User = new user({ name: users.username, password: users.userpwd }); user.findOne({ name: users.username }, function(error, doc){ //添加容错措施 if(error){ console.log('系统查找错误!请重试!'); res.send("<script>alert('系统查找错误!请重试!');location.href='/register';</script>"); }else if(doc){ console.log("用户已存在!"); res.send("<script>alert('用户已存在!');location.href='/register';</script>"); }else{ user.create({ name: users.username,password: users.userpwd }, function(err, doc1){ if(err){ console.log('系统数据保存错误!请重试!'); res.send("<script>alert('系统数据保存错误!请重试!');location.href='/register';</script>"); }else{ console.log('注册成功!'); res.send("<script>alert('注册成功!');location.href='/user';</script>"); } }) } })})module.exports = router;
这里附加一个数据schema的代码:
Schema.js main code:
var mongoose = require('mongoose');var DB_CONN_STR='mongodb://localhost:27017/xixi';mongoose.connect(DB_CONN_STR);mongoose.connection.on('connected', function(){ console.log('mongoose connection open to ' + DB_CONN_STR);});mongoose.connection.on('error', function(err){ console.log('mongoose connection error ' + err);})mongoose.connection.on('disconnected', function(){ console.log('mongoose connection disconnected.');})var userSchema = new mongoose.Schema({ name: { type: String, required: true }, password: String, admin: { type:Boolean, default: false }});var User = mongoose.model('User', userSchema);module.exports = User;
运行一下看看结果,运行服务器,走起:
前台开始注册用户:
注册成功:
阅读全文
0 0
- nodejs使用body-parser解析表单数据
- Nodejs进阶:Express常用中间件body-parser实现解析
- Nodejs 进阶:Express 常用中间件 body-parser 实现解析
- Nodejs 进阶:Express 常用中间件 body-parser 实现解析
- nodejs 使用cron-parser 解析cron 时间
- Express 常用中间件 body-parser 实现解析
- nodejs +body parser接收 base64并保存图片
- node.js 使用 body-parser模块时,传输过来的数据出现undefind的情况
- body-parser Node.js(Express) HTTP请求体解析中间件
- express中间件body-parser实现拿到post请求的数据
- 使用Scala Parser解析JSON
- body-parser和multer
- express body-parser
- nodejs body-parser不支持charset=GBK,报415错误问题
- Nodejs 处理表单提交数据
- nodejs之处理表单数据
- UI 13 数据解析 Parser DOM JSON
- nodejs中req.body对请求参数的解析问题
- Sublime Text3 3143 注册码
- kafka 认证
- java变量类型之间的转换关系
- java使用socket实现一个多线程web服务器
- Mysql 绑定内部IP的设置方法
- nodejs使用body-parser解析表单数据
- UVALive
- C++之--拷贝(复制)构造函数
- Error: Failed to find 'ANDROID_HOME' environment variable. Try setting setting it manually.
- 调用相机,相册,剪裁完成的代码
- codeforces 837B Balanced Substring
- Linux入门学习——虚拟机的使用
- 使用ttf字体
- Linux 安装redis