Home > database >  No operations defined in spec! && Resolver error Cannot read properties of undefined (reading '
No operations defined in spec! && Resolver error Cannot read properties of undefined (reading '

Time:07-23

I have this error in my node JS in swagger-ui-express I don`t know how to fix it enter image description here

this is the code in the index.js file

in this code I`am tryin to call the json file that I make and call it swagger.json

const swaggerUi = require('swagger-ui-express'), swaggerDocument = require('./swagger.json')
app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument))

that the pic of the beggin of the code

enter image description here

but I`am think that the error is here in this json file

"paths": {
    "/api/category": {
        "tages": [
            "Category"
        ],
        "summery": [
            "Get all Categories"
        ],
        "parameters": [
            {
                "name": "categoryName",
                "in": "query",
                "required": false,
                "description": "Category name",
                "type": "string"
            },
            {
                "name": "page",
                "in": "query",
                "required": false,
                "description": "Page Number",
                "type": "integer",
                "default": 1
            },
            {
                "name": "PageSize",
                "in": "query",
                "required": false,
                "type": "integer",
                "default": 10
            }
        ],
        "responses": {
            "200": {
                "description": "OK",
                "schema": {
                    "$ref": "#/definitions/ServiceResponse"
                }
            }
        }
    },
    "post": {
        "tages": [
            "Category"
        ],
        "summery": "Create Category API",
        "parameters": [
            {
                "name": "categoryName",
                "in": "formDate",
                "descripition": "Category Name",
                "required": true,
                "type": "string"
            },
            {
                "name": "CategoryDescription",
                "in": "formDate",
                "descripition": "Category Description",
                "type": "string"
            },
            {
                "name": "Category Image",
                "in": "formDate",
                "descripition": "Category Image",
                "type": "file"
            }
        ],
        "responses": {
            "200": {
                "description": "OK",
                "schema": {
                    "$ref": "#/definitions/ServiceResponse"
                }
            }
        }
    }
},

CodePudding user response:

There are some typos and syntax errors:

  • The "/api/category" path is missing the "get": node that would wrap the GET operation definition. It should look like this:

    "paths": {
      "/api/category": {
        "get": {
          "tags": ...
    
  • "tages" should be "tags".

  • "summery": [...] should be replaced with:

    "summary": "Get all Categories",
    
  • "in": "formDate" should be "in": "formData" ("a" at the end).

  • "descripition" should be "description".

Paste your OpenAPI JSON into https://editor.swagger.io - it will show all errors.

  • Related