1、
创建项目 express -e pro
进入里面
cd pro npm start
装依赖 npm i express-session - D npm i
[email protected] - D
2、
数据库里面 aproject
集合
1 mess 2 liuyan2
3、
开始写代码 supervisor ./bin/www
第一步:1
、引入
bootstrap
和
jQuery
写
index
结构 登录,注册按钮点击事件里面进行跳转
location.href = /register
2、
在index.js
中配路由 对注册和登录进行渲染
router
注:1
!加
tab
出
html
样式
2
路径要把
../
等删除。
3
引入
bootstrap
和
jQuery
;
3、
要渲染的注册ejs
文件写好。并且把前端的
ajax
写好
注:url
:
/users/register post
发送
4、
在user.js
中接受数据
router.post()
数据为
req.body;
注:引入数据库进行链接
Var mongodb = require(“mongodb”).MongoClient;
Var db_str = “mongodb://localhost:27017/testpro”
Mongodb.connect(db_str,(err,database)=>{
Database.collection(“info”,(err,coll)=>{
Coll.insertOne(str,()=>{
Res.send(“1”)
Database.close()})
})
})
第一阶段完成,写好之后进行验证。页面验证然后数据库验证。
第二步:写登录
1、
创建登录的ejs
复制注册 写前端
ajax post
发送 其他同注册
账号密码不符合重新定位到注册。Location
到注册
index
配登录
2、
在user.js
中接受数据,同注册。
Coll.find(str).toArray((err,data)=>{
判断长度是否大于0
最后要关闭数据库
})
开始验证
第三步:存session
1、
在app.js
中引入
session
Var session = require(‘express-session’);
app.use(session({
secret: ‘recommend 128 bytes random string’,
cookie: { maxAge: 20 * 60 * 1000 },
resave: true,
saveUnintialized: true
}))
在
app.use(‘/’,index);
之前;
2.
在user.js
中的登录 判定有数据的时候
Req.session.user = data[0].user
3.
在首页index.js
中配路由中传
user:req.session.user
在首页的index
中写入逻辑
<%if(user){%>
代码
<%}else{%>
代码
<%}%>
逻辑流程符。
4.
配relogin
的路由
req.session.destory
回调函数回到注册;
第四步:留言
1,if
(
user)
中写一个留言按钮 跳转到
/liuyan
2,
在
index.js
中配留言的路由,然后写留言的
ejs
3,把留言里面的东西发到服务器里存到数据库,类似注册
注:1
,存留言的名称
2
,存成功留言之后要重新跳转到本页面。
4,User.Js
中接受数据和注册类似 存到数据库
5,
在index.js
中处理留言的数据,首先连接数据库
,
把数据取出来,
渲染的时候改成{data:data}
;
6,
在
liuyan
的
ejs
文件中把留言给显示出来。
<% data.map(function(item,i){%>
代码
<%})%>
第五步:跳转到详情。
1,
给相应的地方对应a
标签,跳到
detail
,
<a href = "/detail?id=<%-i%>"></a>
2 router.get("/detail",(req,res)=>{
})
3 let i = req.query.id;