簡體   English   中英

在Node.js中將配置文件用於JWT機密

[英]Using a config file for JWT secret in Node.js

我正在學習Node.js,在實現JWT的同時,我想放置一個單獨的config.js文件來設置生成和驗證令牌的機密,但是我對此遇到了麻煩。

首先,我創建配置文件,如下所示:

// JWT config
module.exports.jwt_secret = 'mysecret';

然后,我在API端點處要求它為:

const jwt_secret = require('../../../../../config');

最后,我嘗試如下使用它:

jwt.verify(token, (jwt_secret), function(err, decoded) { ... }

但這是行不通的,因此我嘗試使用jwt_secret進行console.log,然后得到以下信息:

{ jwt_secret: 'mysecret' }

我檢查了代碼,然后在Stack Overflow上進行了搜索,但看不到如何解決這個問題。 我知道這可能很明顯,但是正如我所說的,我在編程方面還很新,正在學習。

先感謝您。

快速瀏覽一下node-jsonwebtoken api, verify似乎期望將字符串作為第二個參數。 設置導出和要求的方式意味着變量jwt_secret是配置模塊中的整個導出對象,而不是字符串。 嘗試將其更改為

jwt.verify(token, jwt_secret.jwt_secret, function(err, decoded) { ... }

如果可行,您可能需要將require語句修改為類似

const config = require('some/path/config');

然后使用config.jwt_secret作為參數。 不過,這只是樣式,請為您的項目做些什么。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM