使用节点将Token保存在本地存储中

2023-11-24

我正在使用智威汤逊("jsonwebtoken": "^5.4.0")与快递4和翡翠。 我能够创建正确的令牌,但是如何在每次调用中传递此令牌? 我必须在哪里存储这个令牌?在标头中还是在本地存储中?

现在我将 CURL 与 Postman 一起使用,并在标头中设置令牌

x-access-token

我是否创建了一个从数据库检索令牌并在每次调用中使用它的中间件?

thanks


您不需要从数据库中保存和检查令牌。这种令牌这种机制只能用您的服务器进行解码,如果完成,则令牌是有效的。您想要执行的代码应该如下所示。

var cookieParser = require('cookie-parser')
app.use(cookieParser())

app.get('/login', function(req, res, next) {
  var user = {name:'test'}; //!! find the user and check user from db then

    var token = jwt.sign(user, 'secret', {
            expiresInMinutes: 1440
          });

    res.cookie('auth',token);
    res.send('ok');

});

app.use(function(req, res, next) {

  var token = req.cookies.auth;

  // decode token
  if (token) {

    jwt.verify(token, 'secret', function(err, token_data) {
      if (err) {
         return res.status(403).send('Error');
      } else {
        req.user_data = token_data;
        next();
      }
    });

  } else {
    return res.status(403).send('No token');
  }
});

在这里您可以找到非常好的文章:https://scotch.io/tutorials/authenticate-a-node-js-api-with-json-web-tokens

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用节点将Token保存在本地存储中 的相关文章

随机推荐

  • 在构造函数内注册事件?

    我一直在研究委托 事件和匿名方法 这样一来 有一点就变得非常清楚了 它不会简化在构造函数中注册任何事件方法或委托函数的过程吗 我的测试表明它是有效的 并且它可以防止您在实例化后必须声明它们 因为对象的构造函数会为您执行此操作 事实上 性能还
  • 如何检查程序是否已安装,如果没有则安装?

    由于完整性检查 我宁愿不使用 WMI 这是我所拥有的不起作用 tempdir Get Location tempdir tempdir tostring reg32 HKLM Software Microsoft Windows Curre
  • 解决元类冲突

    我需要创建一个根据某些条件使用不同基类的类 在一些课程中 我得到了臭名昭著的 TypeError metaclass conflict the metaclass of a derived class must be a non stric
  • 使用 ggplot2 绘制相关矩阵图

    我想创建一个相关矩阵图 即每个变量相对于其他变量绘制在散点图中的图 例如pairs or splom 我想用 ggplot2 来做到这一点 请参阅此处的示例 该链接提到了一些人为在 ggplot2 中执行此操作而编写的一些代码 但是 它已经
  • Java 中的类何时以及如何进行垃圾回收?

    我问了一个关于Java中垃圾收集的问题这个话题 但我得到的答案却给了我另一个问题 有人提到类也可以被垃圾收集器收集 这是真的 如果这是真的 这是如何运作的 当没有任何对象引用 Java 中的类时 它可能会被垃圾回收 在大多数简单的设置中 这
  • ruby 继承与 mixins

    在 Ruby 中 由于您可以包含多个 mixins 但只能扩展一个类 因此看起来 mixins 比继承更受青睐 我的问题 如果您正在编写必须扩展 包含才能有用的代码 为什么要把它变成一个类 或者换句话说 为什么不总是把它做成一个模块呢 我只
  • 将数组排序到索引数组指定的容器中的最有效方法?

    任务举例 data np array 1 2 3 4 5 6 7 8 9 idx np array 2 0 1 1 2 0 1 1 2 预期结果 binned np array 2 6 3 4 7 8 1 5 9 限制条件 应该很快 应该O
  • 如何防止 MFMailComposeViewController 取消时崩溃?

    某处 if MFMailComposeViewController canSendMail MFMailComposeViewController email vc MFMailComposeViewController alloc ini
  • 使用 parsley.js 异步提交表单

    我正在尝试创建一个使用 Parsley js 验证前端并异步提交的表单 该表单称为 contactForm 提交按钮是 sendData 当我在空或无效表单上点击 提交 时 就会出现错误 我希望看到来自无效表单数据的 错误 警报 但它只是继
  • 如何测试另一个安装是否已在进行中?

    假设我正在尝试在 Windows 上自动安装某些内容 并且我想在尝试安装之前尝试测试是否正在进行另一个安装 我无法控制安装程序 必须在自动化框架中执行此操作 有没有更好的方法来做到这一点 一些 win32 api 而不只是测试 msiexe
  • 如何使用 Typescript 的声明与从模块导入的接口合并?

    https www typescriptlang org docs handbook declaration merging html 上面的链接提供了有关声明与接口合并的信息 我希望能够使用具有通用组件的界面来做到这一点 我目前正在使用
  • .NET 中的全局与单例

    我这里有一个很常见的情况 多年来 我一直没有发现我所做的事情是否符合行业标准 考虑一个连接到数据库的应用程序 但连接字符串不是存储在某些文件 设置中 而是作为命令行参数传递在启动时或在应用程序启动时浏览数据库 那么有必要将该连接字符串保存在
  • AppBarLayout 与嵌套片段中的 recyclerView

    由于图像总是比文字更好 我向您展示我当前的布局 工具栏 选项卡位于带有 viewPager 的 Activity xml 中 而 recyclerView 位于 viewPager 内的片段内 因此您可以向右 向左滑动来查看其他内容 我的问
  • 如何确定二进制字符串的统计随机性?

    如何确定二进制字符串的统计随机性 因此 我如何编写自己的测试 并返回与统计随机性相对应的单个值 即 0 到 1 0 之间的值 0 不是随机的 1 0 是随机的 该测试需要适用于任何大小的二进制字符串 当您使用笔和纸执行此操作时 您可能会探索
  • 什么时候调用临时的析构函数

    我想知道 C 03 和 C 11 何时调用临时的析构函数 假设我有以下情况 foo method foo f return foo void doSomething foo f method 假设我正在使用标志 fno elide cons
  • 如何以编程方式添加导航控制器?

    我使用下面的代码 但它没有加载 UIStoryboard storyboard UIStoryboard storyboardWithName Main bundle nil self mapViewController storyboar
  • 删除所有项目后组合框尺寸问题

    我的应用程序包含一个组合框 用户可以从中删除项目 当程序启动时 它会从配置文件中读取的字符串列表填充组合框 这是添加项目的代码 version list is an array of strings foreach string versi
  • 解释 Haskell 中的类型类

    我是一名 C Java 程序员 我在日常编程中碰巧使用的主要范例是 OOP 在某些线程中 我读到一条评论说 Type 类本质上比 OOP 更直观 有人可以用简单的语言解释类型类的概念 以便像我这样的 OOP 人员能够理解它吗 首先 我总是对
  • ExtJs手动触发Click事件,按钮参数与鼠标单击不同

    所以 我有一个登录控制器 你可以用鼠标单击登录或按 Enter 键 如下所示 Ext define My controller Login extend Ext app Controller init function applicatio
  • 使用节点将Token保存在本地存储中

    我正在使用智威汤逊 jsonwebtoken 5 4 0 与快递4和翡翠 我能够创建正确的令牌 但是如何在每次调用中传递此令牌 我必须在哪里存储这个令牌 在标头中还是在本地存储中 现在我将 CURL 与 Postman 一起使用 并在标头中