swagger-node - Ошибка: проверка ответа не удалась: void не допускает значение
Я использую библиотеку swagger-node, и пытаюсь добиться 302-го перенаправления. Но это приводит к ошибке, описанной в заголовке.
Моя схема относительно пути выглядит следующим образом:
/login:
x-swagger-router-controller: login
get:
produces:
- text/html
description: Entry point for login
operationId: login
responses:
"302":
headers:
Location:
type: "string"
description: Found
В моем API у меня есть экспресс-приложение, и я просто перенаправляю так:
res.redirect(redirect_url);
Как я могу достичь перенаправления с помощью Swagger-узла?
Stacktrace выглядит следующим образом:
Error: Response validation failed: void does not allow a value
at throwErrorWithCode (/home/coder/projects/clever-saml2/clever-saml2/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/swagger-tools/lib/validators.js:121:13)
at validateTypeAndFormat (/home/coder/projects/clever-saml2/clever-saml2/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/swagger-tools/lib/validators.js:538:7)
at Object.module.exports.validateSchemaConstraints (/home/coder/projects/clever-saml2/clever-saml2/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/swagger-tools/lib/validators.js:630:7)
at validateValue (/home/coder/projects/clever-saml2/clever-saml2/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/swagger-tools/middleware/swagger-validator.js:117:16)
at ServerResponse.res.end (/home/coder/projects/clever-saml2/clever-saml2/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/swagger-tools/middleware/swagger-validator.js:252:9)
1 ответ
Не знаю, поняли ли вы это уже, но чтобы заставить работать 302 ответ, нужно определить тип схемы из ответа в виде строки
responses:
"302":
description: "302 response"
schema:
type: string
Попробуйте добавить схему после description: found
schema:
type: array
items:
$ref: '#/definitions/example'
return res.status(200).json("Success");
больше информации>