nodejs 牛刀小试
来源:互联网 发布:零基础学大数据现实吗 编辑:程序博客网 时间:2024/05/16 14:03
目前在做一个用户登录验证的案例
参考了nodejs的权威指南还有 下载了一些其他案例,都是引用很多模板。对模板完全不熟悉的人表示压力巨大啊
也尝试着自己去写,带有java的惯性思维,我思考这个是不是也有一个类似ajax机制的一个东西,去百度,竟然也找到了。
真是弯路 弯路 再弯路啊
不多说上代码
用到的模板 express 数据库mysql
app.js
//用户校验
socket.on('JudgeUser', function(nickName) {
console.log("校验"+nickName);
var insertSQL = "select * from yr_chart where ?"
conn.query(insertSQL,{user_name:nickName},function (err1, rows) {
if(err1){
console.log("查询失败");
}
if(rows.length>0){
socket.emit('userExisted');
}else{
socket.emit('userNotExisted');
}
})
});
//用户注册
socket.on('userRegist', function(nickName,password) {
//防止sql注入
conn.escape(nickName);
conn.escape(password);
//判断用户表中有没有该用户
var insertSQL = "select * from yr_chart where ?"
conn.query(insertSQL,{user_name:nickName},function (err1, rows) {
if(err1){
console.log("查询失败");
}
if(rows.length>0){
socket.emit('userExisted');
}else{
//插入
var insertSQL = "insert into yr_chart SET ?"
conn.query(insertSQL,{user_name:nickName,user_password:password},function (err1, res1) {
if(err1){
console.log("插入失败");
//提示该用户存在
socket.emit('registFail');
}else{
socket.emit('loginSuccess');
//注册成功直接登录
io.sockets.emit('system', nickName, users.length, 'login');
}
});
}
})
});
//用户登录
socket.on('login', function(nickname,password) {
if (users.indexOf(nickname) > -1) {
socket.emit('nickExisted');
} else {
var insertSQL = "select * from yr_chart where user_name = ? and user_password =?"
console.log(nickname);
console.log(password);
conn.query(insertSQL,[nickname,password],function (err1, rows) {
if(err1){
console.log("登录查询失败");
}else{
if(rows.length>0){
socket.userIndex = users.length;
socket.nickname = nickname;
users.push(nickname);
socket.emit('loginSuccess');
io.sockets.emit('system', nickname, users.length, 'login');
console.log("登录查询成功");
}else{
socket.emit('userNotExisted');
console.log("找不到该用户");
}
}
})
};
});
做用户姓名验证直接发送姓名过去数据库查询就可以了 用不着ajax的
上边的代码不能直接用 你得建立数据库连接才行
- nodejs 牛刀小试
- 牛刀小试!
- 牛刀小试
- 牛刀小试
- 牛刀小试
- 牛刀小试
- Ajax牛刀小试
- awk牛刀小试
- 牛刀小试iReport
- JNI,牛刀小试
- sigsuspend牛刀小试
- LoadRunner牛刀小试
- JSF 牛刀小试
- CreateRemoteThread 牛刀小试
- Javascript牛刀小试
- Unity3D牛刀小试
- CTF牛刀小试
- 查找-牛刀小试
- php模拟cmd界面
- POJ 3264 Balanced Lineup(简单线段树)
- maven环境快速搭建
- 自制Ping(2) Structures
- 蛇形矩阵
- nodejs 牛刀小试
- java EE之cookie和session
- D3D 顶点缓存的设计
- mysql Error Code: 1005(errorno:121)解决
- 顶点缓存Vertices
- 会计核算原则
- 【ZooKeeper Notes 4】可视化ZooKeeper的事务日志
- 怎么找到qq的人工客服!
- loadView、viewDidLoad及viewDidUnload的关系