swagger-tools
swagger-tools copied to clipboard
Swagger metadata stopped working on a path after 0.10.1
Hi, we are using swagger-tools on a project and will updating it from 0.10.1 to 0.10.3 some test of ours started failing.
A quick diagnostic shows this: 0.10.1
swagger-tools:middleware:metadata GET /files/1/-/preview/ +437ms
swagger-tools:middleware:metadata Is a Swagger path: true +0ms
swagger-tools:middleware:metadata Is a Swagger operation: true +0ms
swagger-tools:middleware:metadata Processing Parameters +1ms
swagger-tools:middleware:metadata fileId +0ms
swagger-tools:middleware:metadata Type: integer +0ms
swagger-tools:middleware:metadata Value provided: true +0ms
swagger-tools:middleware:metadata Value: 1 +1ms
swagger-tools:middleware:ui GET /files/1/-/preview/ +0ms
swagger-tools:middleware:ui Will process: no +0ms
swagger-tools:middleware:validator GET /files/1/-/preview/ +7ms
swagger-tools:middleware:validator Will process: yes +0ms
swagger-tools:middleware:validator Request validation: +0ms
swagger-tools:middleware:validator Validation: succeeded +1ms
․
1 passing (837ms)
0.10.2 (and superior)
swagger-tools:middleware:metadata GET /files/1/-/preview/ +505ms
swagger-tools:middleware:metadata Is a Swagger path: false +0ms
swagger-tools:middleware:ui GET /files/1/-/preview/ +2s
swagger-tools:middleware:ui Will process: no +0ms
!
0 passing (963ms)
1 failing
Here is the route definition:
/**
* @swagger
* /files/{fileId}/-/*:
* get:
* tags:
* - file
* description: Returns file based on ID
* summary: Returns transformed file by ID
* produces:
* - image/jpeg
* - image/png
* parameters:
* - $ref: '#/parameters/fileId'
* responses:
* '200':
* description: the transformed file
* '401':
* $ref: '#/responses/Unauthorized'
* '404':
* $ref: '#/responses/NotFound'
* default:
* $ref: '#/responses/Unknown'
*/
router
.route('/files/:fileId/-/*')
.all(swaggerValidator())
.get((req, res, next) => {
const transformPath = req.path.replace(/\/files\/\d+/i, '')
return res.redirect(helpers.urls.files.transform(req.fetched_file.id, transformPath))
})
Should we change something for the middleware to continue working properly ?
Thanks
I'll have to look into it. Thanks for the report.
Could https://github.com/apigee-127/swagger-tools/issues/184#issuecomment-366138023 be related?