Así que he agregado alguna configuración de swagger en una carpeta de rutas así:
import express from 'express'; import swaggerUi from 'swagger-ui-express'; import swaggerDocument from '../swagger/swagger.json'; const router = express.Router(); router.get('/api-docs', swaggerUi.setup(swaggerDocument)); export { router as swaggerRouter } Ahora hay un proceso de autenticación en el archivo raíz app.ts , pero entiendo que si agrego el punto final de swagger antes de que ejecute la lógica de autenticación, no debería solicitar encabezados:
app.get('/', (req, res) => { res.send('Howdy!'); }); app.use(swaggerRouter); app.use(async (req, res, next) => { const result = await auth.verifyAuth(req).catch((err) => { return err; }); if (result.httpCode == 200) { res.locals.authResult = result next() } else { res.send(result) } }); Por lo tanto, la lógica de autenticación de donde proviene verifyAuth sería un buen middleware para apuntar a los puntos finales en lugar de toda la aplicación, pero refactorizarlo para que funcione como un middleware de este tipo es una molestia porque el autor escribió cada función para depender de cada otra función. .
Y, sin embargo, si agrego un punto final aleatorio por encima de esa lógica de autenticación como:
router.get('/pingMe', (req, res) => {}Puede ir a ese sin que se le pida que proporcione encabezados.
¿Qué me estoy perdiendo?
Literalmente eliminé la lógica de autenticación y todavía no puedo llegar al punto final de Swagger sin que me pidan encabezados.