0

Express サーバーを実行していて、エンドポイントに JWT 保護を設定しました。エンドポイントをテストしてい/graphqlたところ、403Not allowed to provide a JWT tokenエラーが発生しました。私の他のエンドポイントは正常に動作するので、JWT の署名または検証の問題ではないと思います。何か案は?

var jwt = require('express-jwt');

var app = express();

var jwtCheck = jwt({
   secret: new Buffer(config.secret, 'base64'),
   audience: aud,
   issuer: iss
});

// enforce on all endpoints
app.use(jwtCheck);

app.use('/', postgraphql(config.db_string, config.db_schema, {
    development: true,
    log: true,
    secret: config.secret,
    graphiql: true,
}));

バニラのgraphqlエンドポイントに着陸するPostman Request

4

1 に答える 1

0

問題は、正しいパラメータを に渡していないことにありましたPostgraphQL。Authorization ヘッダーで JWT トークンを に渡すPostgraphQLと、シークレットが必要になります。シークレットが存在しない場合はPostgraphQL、エラー 403 エラーがスローされNot allowed to provide a JWTます。

于 2016-12-29T05:14:41.523 に答える