介绍
这篇文章给大家介绍怎么在node . js中利用饼干保持登录,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
<强> 1。使用表达创建应用强>
就下面的命令序列:
express LoginDemo cd LoginDemo npm 安装
<强> 2。登录页面强>
登录页面的玉模板为登录。玉,内容如下:
doctype html 超文本标记语言 ,头 元才能(charset=& # 39; utf - 8 # 39;) title 才能登录 链接才能(rel=& # 39;样式表# 39;,,href=https://www.yisu.com/zixun///css样式表) 身体 .form-container p。form-header登录 形式(action=暗锹肌?方法=蟆?对齐=爸行摹? 表格 tr 道明 标签(=坝没А?账号: 道明 输入#用户(type='文本' name=' login_username ') tr 道明 标签(=pwd)密码: 道明 输入# pwd (type=苈搿?name=' login_password ') tr td (colspan=' 2 ',使=罢返摹? 输入(type='提交',value='登录”) p #{味精}
login.jade放在视图目录下。我在login.jade里硬编码了汉字,注意文件用utf - 8编码。
这个模板的最后是一条动态消息,用于显示登录错误信息,味精变量由应用程序传入。
我给登录页面写了个简单的CSS,登录。css文件,内容如下:
form { ,保证金:12 px; } a { ,颜色:# 00 b7ff; } div.form-container { ,显示:inline-block; ,边界:6 px solid 钢蓝色的; ,宽度:280 px; ,这个特性:10 px; ,保证金:12 px; } p.form-header { ,保证金:0 px; 大胆,字体:24 px ; ,颜色:白色; 背景:大敌;钢蓝色的; ,text-align:中心; } 输入(type=提交){ 大胆,字体:18 px ; ,宽度:120 px; ,margin-left: 12 px; }
请把css放在公共/样式表目录下。
<强> 3。概要页面强>
登录成功后会显示配置页面,概要文件。玉页面内容:
doctype html 超文本标记语言 ,头 元才能(charset=& # 39; utf - 8 # 39;) title=才能,标题 ,身体 p 才能;#{味精} p 才能;# {lastTime} p 才能; ,,(href=https://www.yisu.com/zixun//注销)退出
profile.jade放在视图目录下. profile页面显示一条登录成功的消息,还显示上次登录时间,最后提供了一个退出链接。
<强> 4。app.js改动强>
我改动了app.js,以便用户在没有登录时访问网站自动跳转到登录页面。新的应用。js内容如下:
var express =,要求(& # 39;表达# 39;); var path =,要求(& # 39;path & # 39;); var favicon =,要求(& # 39;serve-favicon& # 39;); var logger =,要求(& # 39;摩根# 39;); var cookieParser =,要求(& # 39;cookie-parser& # 39;); var bodyParser =,要求(& # 39;body-parser& # 39;); var users =,要求(& # 39;。/线路/用户# 39;); var app =,表达();//,view engine 设置 app.set(& # 39;观点# 39;,,path.join (__dirname, & # 39;观点# 39;)); app.set (& # 39; view 引擎# 39;,,& # 39;玉# 39;);//,uncomment after placing  your favicon 拷贝/公众//app.use(标识(path.join (__dirname, & # 39;公共# 39;,,& # 39;favicon.ico& # 39;))); app.use(记录器(& # 39;dev # 39;)); app.use (bodyParser.json ()); app.use (bodyParser.urlencoded({,扩展:false })); app.use (cookieParser ()); app.use (express.static (path.join (__dirname, & # 39;公共# 39;))); app.all (& # 39; * & # 39;,, users.requireAuthentication); app.use(& # 39;/& # 39;,,用户);//,catch 404,以及forward 用error 处理程序 app.use(功能(要求的事情,,,,下一个),{ ,var err =, new 错误(& # 39;Not 发现# 39;);=,err.status 404; ,下一个(错); });//error 处理程序//,development error 处理程序//,will print 加亮 if (app.get (& # 39; env # 39;),===, & # 39;发展# 39;),{ ,app.use(函数(呃,,要求的事情,,,,下一个),{ res.status才能(err.status | |, 500); res.render才能(& # 39;错误# 39;,,{ ,,,的信息:err.message, ,,错误:错误 ,,}); ,}); }//,production error 处理程序//,no stacktraces  leaked 用用户 app.use(函数(呃,,要求的事情,,,,下一个),{ ,res.status (err.status | |, 500); ,res.render(& # 39;错误# 39;,,{ 信息:,err.message,才能 ,,错误:{} ,}); }); 时间=module.exports 应用;怎么在node . js中利用饼干保持登录