当前位置: 首页 > news >正文

刷赞网站推广软件手机网站建设电话

刷赞网站推广软件,手机网站建设电话,北京百度公司总部电话,自助广告位网站源码全面鉴权 这一节我们来介绍一下 Passport.js#xff0c;这是一个强大的 NodeJS 的认证中间件 Passport.js 提供了多种认证方式#xff0c;账号密码、OpenID、ApiKey、JWT、OAuth、三方登录等等。 使用 Passport.js 认证要配置三个部分#xff1a; 认证策略中间件会话 接…全面鉴权 这一节我们来介绍一下 Passport.js这是一个强大的 NodeJS 的认证中间件 Passport.js 提供了多种认证方式账号密码、OpenID、ApiKey、JWT、OAuth、三方登录等等。 使用 Passport.js 认证要配置三个部分 认证策略中间件会话 接下来我们以 账号密码 认证为例来演示一下 Passport.js 的使用 准备工作 新建一个基础的 evp-express 项目 安装依赖 安装 passport.js npm install passport安装 local 策略 npm install passport-local创建页面 在 public 目录下面创建 index.html, fail.html, home.html 3个页面 index.html: !DOCTYPE html html langen headmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/title /head bodyform action/login methodpostinput nameusername placeholderusername... /input namepassword placeholderpassword... /button typesubmitLogin/button/form /body /htmlfail.html !DOCTYPE html html langen headmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0titleFail/title /head bodyh1Fail/h1a titlegologin href/viewsGo login/a /body /htmlhome.html !DOCTYPE html html langen headmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0titleHome/title /head bodyh1Hello, Home!/h1 /body /html设置静态目录 app.js: const config require(./config.js).get(); //... app.use(/views, express.static(config.public, { extensions: [html] }));这个 extensions 选项用于允许访问静态页面不带 html 后缀。 开启Session app.js: //... app.use(session({secret: secret,resave: false,saveUninitialized: true }));初始化passport app.js: const passport require(passport);//... app.use(passport.initialize()); app.use(passport.session());设置认证 步骤 使用策略规定认证过程done是回调函数可以接收三个参数异常在会话中保存的用户信息填 false 代表认证失败其余数据比如传递信息序列化用户信息反序列化用户信息 app.js: const LocalStrategy require(passport-local).Strategy;//... passport.use(new LocalStrategy(function verify(username, password, done) {if (username root password root) {return done(null, { username, password});}return done(null, false, {message: None});} ))passport.serializeUser((user, cb) {process.nextTick((){cb(null, {username: user.username, password: user.password})}) })passport.deserializeUser((user, cb) {process.nextTick((){return cb(null, user);}); });编写登录接口 router/index.js: const { Json, Form, Multi, FromPlus } require(../midwares/bodyParser);//... router.post(/login, FromPlus, passport.authenticate(local, {failureRedirect: /views/fail,failureFlash: false }), (req, res, next) {res.redirect(/views/home); });前端页面在表单中填写登录信息先按照表单格式解析一下然后再加入 passport 的认证中间件指定策略为 local, 并指定认证失败跳转到 fail.html成功则重定向到 homte.html这个可以和失败重定向一样作为 successRedirect 选项写到上面。 保护接口 编写一个判断时候登录的中间件函数 function isLogined(req, res, next) {if (req.isAuthenticated()) {return next();}res.redirect(/views/); }对 / 路由进行登录保护 router.get(/, isLogined, (req, res, next) {logger.info(Hello World!);res.json(Resp.ok(Hello World!, 1, null)); });测试 此时运行项目在浏览器中访问http://127.0.0.1:8080会被重定向到登录界面登录成功后在地址栏可以正常访问到这个被保护的路由登录失败则会被重定向到 fail 页面。 Passport.js 的更多用法请自行探索详见官方文档https://www.passportjs.org/docs/ 下一节-软件测试
http://www.hkea.cn/news/14482058/

相关文章:

  • 网站代理加盟企业网络规划设计与实现
  • 网站开发进度源码做网站前产品经理要了解什么
  • 上海市网站建设电话号码湖北建设厅考试网站
  • 太仓网站开发上海外贸公司27号
  • 建设视频网站流量网站建设v5star
  • wordpress 仿站命令有没有什么专门做兼职的网站吗
  • 云服务器怎么做多个网站网页设计代码html模版
  • 没有版权可以做视频网站吗公司网站建设深
  • 商城网站建设如何网站开发公司架构
  • 自己电脑做网站服务器小工具主机屋网站空间的IP
  • 纯静态网站 后台计算机网页设计实训报告
  • 10月哪个网站做电影票活动网站丢失怎么解决
  • 东莞网站推广的公司电子商务网站系统规划报告
  • 如何在服务器上搭建网站深圳外贸网站建设设计公司
  • 怎样查询网站建设时间学设计哪个专业好
  • 做海报的素材哪个网站软件项目网站建设实验报告
  • 外贸网站 建站免费下载优化大师
  • 安庆公司做网站wordpress绕绕
  • 烟台百度网站建设如何用电脑主机做网站
  • 贵州专业网站建设费用wordpress2级目录伪静态
  • phpstudy做正式网站关于宠物的网站模板
  • 装饰设计网站大全西安网站制作平台
  • 成都络迈品牌网站建设二级网站域名
  • 肇庆做网站哪家好灵山招聘网灵山英才网做灵山专业的招聘网站
  • 海南网站建设监理wordpress阿里云配置文件
  • 中国正规现货交易平台win7优化大师
  • 山西太原网站建设公司WordPress下级
  • 百度站长工具app如何申请免费空间
  • 一级域名和二级域名做两个网站阿里云网站建设程序
  • 提高网站的权重的最佳方法界面设计学校培训