Node 后台之安全性

本文介绍了如何使用Node.js创建HTTPS服务,并详细展示了Token的创建及验证流程。通过具体代码示例,读者可以了解到如何配置HTTPS服务,以及如何实现基于Token的身份验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、https

var https = require('https');
var fs = require('fs');

var options = {
    key: fs.readFileSync('./keys/214348170300525.key'),
    cert: fs.readFileSync('./keys/214348170300525.pem')
};

https.createServer(options,function(request, response){
    response.writeHead(200, { 'Content-Type': 'text-plain' });
    response.end('Hello World,lalala\n');
}).listen(443);

2、token的使用以及验证过程

app.all('/*', function(req, res, next){    //每个请求都会经过这里  需要写在路由定义之上
  if(req.query.name){
    next();
  }else{
    res.send({
      result:'name necessary'
    })
  }
});
var express = require('express');
var router = express.Router();
var token = require('./token');
/* GET home page. */
router.get('/login', function(req, res, next) {
  res.send({
    code:token.createToken({     //Payload
      "iss": "ninghao.net",
      "exp": "1438955445",
      "name": "wanghao",
      "admin": true
    },60)
  });
});
router.get('/yz', function(req, res, next) {
  res.send({
    result:token.checkToken('eyJkYXRhIjp7ImlzcyI6Im5pbmdoYW8ubmV0IiwiZXhwIjoiMTQzODk1NTQ0NSIsIm5hbWUiOiJ3YW5naGFvIiwiYWRtaW4iOnRydWV9LCJjcmVhdGVkIjoxNTExOTI2NTY3LCJleHAiOjYwfQ==.xHjXwe96w6DJD3kxUSD03+uckJRjM0nYE9C6ryBxHTc=')
  });
});
module.exports = router;

token的创建过程在之前有讲过,其中:

Payload 里面是 Token 的具体内容,这些内容里面有一些是标准字段,你也可以添加其它需要的内容。下面是标准字段:

  • iss:Issuer,发行者
  • sub:Subject,主题
  • aud:Audience,观众
  • exp:Expiration time,过期时间
  • nbf:Not before
  • iat:Issued at,发行时间
  • jti:JWT ID

转载于:https://www.cnblogs.com/KDSER/p/7919540.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值