我将如何使用 express-Jwt 从 idToken 解码信息?

How would I decode info from idToken using express-Jwt?

我的应用程序使用 Google 的身份验证,浏览器将 idToken 发送到我的 API 服务器。我使用 checkIfAuthenticated 来验证 idToken,一旦验证成功,需要从中获取 decode/extract 信息。但我不知道如何 decode/extract.

验证和路由的方式如下:

const jwksRsa = require('jwks-rsa');
const expressJwt = require('express-jwt');

const checkIfAuthenticated = () =>
{
    var googleUri = "https://www.googleapis.com/oauth2/v3/certs";
    expressJwt({
        secret: jwksRsa.expressJwtSecret({
            cache: true,
            rateLimit: true,
            jwksUri: googleUri
        }),
        algorithms: ['RS256']
    });
    // try to decode but gave me a definition of ƒ (req, res, next){...
    var data = expressJwt({secret: googleUri, requestProperty: 'auth', algorithms: ['RS256'] }); 
}

module.exports = app =>
{
    app.post("/needvalidation", checkIfAuthenticated, ... );
};

发现最好的方法是使用 Google 的包 google-auth-library