nodejs+mongodb写的一个简单的登录注册
来源:互联网 发布:推荐网络教育的理由 编辑:程序博客网 时间:2024/05/16 13:02
自己自学Nodejs 中 随便写着玩的 没学到数据集过滤 就自己想了个笨办法
还不完善 自己练手了
----------------------------------------------------------------------以下是服务器代码 server.js---------------------------------------------------------------------------
var express = require('express');
var app = express();
var MongoClient = require('mongodb').MongoClient;
app.get('/', function(req, res){
res.type('.html')
res.sendFile(__dirname + "/" + "index.html")
})
/*注册功能*/
app.get('/process_get', function(req, res){
res.type('.html')
respose={
name:req.query.name,
password:req.query.password
}
/**/
function addUser(collection, db){
collection.insert(db, function(err, results){
if(!err){
console.log(results)
}
})
}
MongoClient.connect("mongodb://dbadmin:li19941217@localhost:27017/admin", function(err, db){
var myDB = db.db("users");
myDB.collection("userCollection", function(err, ncoll){
//ncoll.remove({user_name:"ceshi"}, function(err, results){} )
ncoll.find({user_name:respose.name}, function(err, items){
items.toArray(function(err, item){
console.log(item.length) //通过查询出的数组长度去判断
if(item.length < 1){
addUser(ncoll, { user_name:respose.name, user_padd:respose.password})
res.end("您已注册成功!")
} else{
res.end("对不起,用户名重复,你再想想呗~")
}
})
})
})
})
})
/*注册功能*/
/*登录功能*/
app.get('/user_get', function(req, res){
respose = {
name:req.query.name,
password:req.query.password
}
// console.log(respose.name)
MongoClient.connect("mongodb://dbadmin:li19941217@localhost:27017/admin", function(err, db){ //这里要输入你的数据库管理账户密码
var myDB = db.db("users");
myDB.collection("userCollection", function(err, ncoll){
ncoll.find(function(err, items){
items.toArray(function(err, item){
//console.log("biao" + JSON.stringify(item))
})
})
// console.log(respose.name)
ncoll.find({user_name:respose.name}, function(err, items){
if(err){
console.log(err)
}
items.toArray(function(err, item){
console.log(item[0].user_padd)
if(respose.password == item[0].user_padd){
console.log("password" +respose.password == item[0].user_padd)
res.type('.html');
res.end("欢迎您" + respose.name)
}
else {
res.type(".html");
res.end("对不起,您输入的密码不正确")
}
})
})
})
})
})
/*登录功能结束*/
app.listen(3001)
----------------------------------------------------------------------以上是服务器代码 server.js---------------------------------------------------------------------------
----------------------------------------------------------------------以下是html代码 index.html-----------------------------------------------------------------------------
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>zhuce</title>
</head>
<body>
<form action="http://localhost:3001/process_get">
<span>您的昵称:</span><input type="text" name="name">
<p></p>
<span>您的密码</span><input type="text" name="password">
<p></p>
<input type="submit" value="注册">
</form>
<p></p>
<form action="http://localhost:3001/user_get">
<span>您的昵称:</span><input type="text" name="name">
<p></p>
<span>您的密码</span><input type="text" name="password">
<p></p>
<input type="submit" value="登录">
</form>
</body>
</html>
----------------------------------------------------------------------以下是遇到的坑 ---------------------------------------------------------------------------
1、mongoose登录的话 需要你的数据库管理员账户密码
2、res.type('.html) 最好提前 不然会因为异步的问题 造成先输出send 后设置header的问题
3、toArray() 方法可以变成数组 方便JSON处理 而 each()方法你自己试试- -
4、以后遇到了再补充吧
-----------------------------------------------------------我还比较菜 不对的地方轻喷 还有我写这个的时候没有学到数据集的过滤 -------------------------------------------------------------------------
我写这个的时候没有学到数据集的过滤!
我写这个的时候没有学到数据集的过滤!
我写这个的时候没有学到数据集的过滤!
自己也比较菜 - - 就当是学习笔记
- nodejs+mongodb写的一个简单的登录注册
- 写了一个简单的注册登录模块
- 一个简单的注册登录模块
- 一个简单的注册/登录程序
- JDBC+Servlet+JSP+Mysql写的一个简单的登录注册
- 求一个用SSH框架+mysql写的简单小实例,比如登录注册
- 用PHP和HTML写一个简单的网站登录注册项目
- (NodeJS学习文章收集三) node.js基于express框架搭建一个简单的注册登录Web功能
- 一个简单的nodejs+express+mongodb的英文教程
- php写一个简单的登录程序
- WebForm写一个简单的登录
- php简单网站的登录和注册怎么写
- 使用ssh框架写一个基本的登录注册页面
- 使用ssh框架写一个基本的登录注册页面
- nodejs + mongodb 实现用户登录的资源
- [NodeJS]使用Node.js写一个简单的在线聊天室
- 一个用nodejs写的简单http服务器
- 小白教程——Windows下用PHP写一个简单的登录注册页面(一)
- 约瑟夫问题
- HTML一个页面头部的大概内容
- C++中,debug编译成功,为什么release模式编译报错
- 这篇文章为了请教大牛帮忙解决一下现网乱码问题
- 创建存储过程
- nodejs+mongodb写的一个简单的登录注册
- 【Linux】进程间通信(IPC)之匿名管道和命名管道以及测试用例
- windows phone获取GPS地理位置信息
- 【linux】守护进程
- 第一周
- 激光与视觉的融合论文
- Java序列化与JSON序列化大比拼
- int,Uint,uint16的区别及用处
- 整理音乐