在node.js中的express框架里面配置的 token------node.js 通过 jwt 生成token 和验证token - 前端笔记-直接贴代码了 //注意:需要引入expressbody-parser constexpress=require('express')...

学习笔记

点滴记忆
回忆过往
首页>> web后端 >>在node.js中的express框架里面配置的 token------node.js 通过 jwt 生成token 和验证token - 前端笔记
直接贴代码了
//注意:需要引入 express body-parser
const express = require('express'//引入第三方express框架
const app = express() //创建web服务
const path = require('path'//路径管理模块
//解决跨域
const cors = require('cors')
app.use(cors())
// 给 服务器添加 gzip压缩
const compression = require('compression')
app.use(compression())
// 解决history单页程序  空白问题
var history = require('connect-history-api-fallback')
app.use(history())

app.use(express.static(path.join(__dirname'public'))) //静态资源管理
const bodyParser = require('body-parser'//处理post接收值的第三模块
app.use(bodyParser.urlencoded({ extendedfalse })) //接收post传值中间件
app.use(bodyParser.json()) //接收json传真中间件

const jwt = require('jsonwebtoken'//生成token的

//配置使用cookie的
const cookie = require('cookie-parser')
app.use(cookie())

// 登录接口
app.post('/login', (reqres=> {
  console.log(req.body)
  let { usernamepassword } = req.body

  // 进入数据库验证  此时先不验证

  let content = { nameusername } // 加密信息
  let secretOrPrivateKey = 'jwt' // 这是加密的key(密钥)

  // token = 加密信息 + 密钥 + 过期时间
  let token = jwt.sign(contentsecretOrPrivateKey, {
    expiresIn60 * 60 * 1 // 1小时过期
  })

  res.json({ status1mess'ok'tokentokenuser_namereq.body.name })
})

// 判断token信息
app.post('/home', (reqres=> {
  let token = req.get('Authorization'// 从Authorization中获取token
  let secretOrPrivateKey = 'jwt' // 这是加密的key(密钥)
  // 对比token
  jwt.verify(tokensecretOrPrivateKey, (errcon=> {
    if (err) {
      res.json({ status400message'token存在问题' })
    } else {
      res.json({ status'200'message'登录成功' })
    }
  })
})

app.listen(80, () => {
  //监听端口
  console.log('http://127.0.0.1')
})










×

感谢您的支持,我们会一直保持!

扫码支持
请土豪扫码随意打赏

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

打赏作者
版权所有,转载注意明处:前端笔记 » 在node.js中的express框架里面配置的 token------node.js 通过 jwt 生成token 和验证token

发表评论

路人甲 表情
Ctrl+Enter快速提交

网友评论(0)