问题描述
我正在尝试使用Node.js Express服务器向Swagger UI添加授权标头。请求必须具有x-auth-token
作为API的头之一才能获得身份验证。以下是我的app.js
代码:
const swaggerDeFinition = {
info: {
title: 'MysqL Registration Swagger API',version: '1.0.0',description: 'Endpoints to test the user registration routes',},host: 'localhost:8000',basePath: '/api/v1',securityDeFinitions: {
bearerAuth: {
type: 'apiKey',name: 'x-auth-token',scheme: 'bearer',in: 'header',};
const options = {
// import swaggerDeFinitions
swaggerDeFinition,// path to the API docs
apis: ['dist-server/docs/*.yaml'],};
// initialize swagger-jsdoc
const swaggerSpec = swaggerJSDoc(options);
// use swagger-Ui-express for your app documentation endpoint
app.use('/docs',swaggerUi.serve,swaggerUi.setup(swaggerSpec));
但是,这并未将标头添加到Swagger UI中的请求中。如何解决此问题?
解决方法
将以下密钥添加到您的 try:
return self[key]
except KeyError: # <---- KeyError raised in __missing__ caught here
return default
:
swaggerDefinition