Ville Miekk-oja
Ville Miekk-oja

Reputation: 21055

swagger-node - Error: Response validation failed: void does not allow a value

I'm using swagger-node library, and am trying to achieve a 302 redirect with it. But it results into the error described in the title.

My schema regarding the path looks following:

  /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

In my api, I have express app, and I'm just redirecting like so:

res.redirect(redirect_url);

How could I achieve redirect using swagger-node?

Stacktrace is following:

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)

Upvotes: 1

Views: 1908

Answers (1)

Don't know if you already figured it out, but to make 302 response work, u have to define the schema type from the response as a string

responses:
  "302":
    description: "302 response"
    schema:
      type: string

Upvotes: 4

Related Questions