我試圖驗證簽名令牌並使用NodeJS從它提取信息。NodeJS JWT令牌驗證
我在瀏覽器中現在有一個名爲userToken的令牌,它在登錄後保存(我使用auth0登錄)。
我試着在這裏手動驗證我的令牌:http://jwt.io,它工作並給我有效載荷數據沒有問題。但是,我不能用NodeJS做同樣的事情。我該怎麼做?
我閱讀文檔,但我無法得到它。 https://github.com/auth0/express-jwt
這裏是我的server.js
var http = require('http');
var express = require('express');
var cors = require('cors');
var app = express();
var jwt = require('express-jwt');
var dotenv = require('dotenv');
dotenv.load();
var authenticate = jwt({
secret: new Buffer(process.env.AUTH0_CLIENT_SECRET, 'base64'),
audience: process.env.AUTH0_CLIENT_ID
});
// view engine setup
var path = require('path');
app.set('views', path.join(__dirname, 'views'));
app.use(express.static(path.join(__dirname, 'public')));
app.set('view engine', 'jade');
app.configure(function() {
// Request body parsing middleware should be above methodOverride
app.use(express.bodyParser());
app.use(express.urlencoded());
app.use(express.json());
app.use(cors());
app.use(app.router);
});
app.get('/', function (req, res) {
res.render('index');
});
app.get('/test', function(req,res) {
// how do I check it?
});
var port = process.env.PORT || 3001;
http.createServer(app).listen(port, function (err) {
console.log('listening in http://localhost:' + port);
});
節點告訴你'jwt'沒有'verify'函數,實際上它看起來好像沒有。 –
它看起來像express-jwt和jsonwebtokens之間有一個連接,我試圖弄清楚。 https://github.com/auth0/node-jsonwebtoken – salep
是的,'jsonwebtoken'爲'express-jwt'創建(或標記)標記以處理 –