标记匿名方法:swagger 3.0.2版

标记匿名方法:swagger 3.0.2版,swagger,swagger-2.0,Swagger,Swagger 2.0,我正在使用,我在本地托管了它,并为它提供了我的Json文件和API。它可以很好地打开文档并列出Json文件中的所有方法,在我将基本身份验证放入其中后,我在.Json文件中做了更改,但有一些方法我想标记为匿名 { "swagger": "2.0", "info": { "description": "description", "version": "1.0", "title": "API" }, "host": "l

我正在使用,我在本地托管了它,并为它提供了我的Json文件和API。它可以很好地打开文档并列出Json文件中的所有方法,在我将基本身份验证放入其中后,我在.Json文件中做了更改,但有一些方法我想标记为匿名

{
    "swagger": "2.0",
    "info": {
        "description": "description",
        "version": "1.0",
        "title": "API"
    },
    "host": "localhost",
    "schemes": [
        "http"
    ],
    "securityDefinitions": {
        "anonymous_auth": {
            "type": ""
        },
        "basic_auth": {
            "type": "basic",
            "name": "basic_auth",
            "description": "Basic Authentication"
        },
        "token": {
            "type": "apiKey",
            "description": "API Token Authentication",
            "name": "apikey",
            "in": "header"
        }
    },
    "security": [
        {
            "basic_auth": [ ]
        },
        {
            "token": [ ]
        }
    ],
    "paths": {
        //somthing
    },
    "definitions": {  
        //something    
    }
}

通过使用securityatribute,它将以这种方式保护完整的文件,但我有一些方法应该是匿名的。

要删除全局
安全性
,请在操作中添加一个空的
安全性
数组:

{
    "swagger": "2.0",
    "info": {
        "description": "description",
        "version": "1.0",
        "title": "API"
    },
    "host": "localhost",
    "schemes": [
        "http"
    ],
    "securityDefinitions": {
        "anonymous_auth": {
            "type": ""
        },
        "basic_auth": {
            "type": "basic",
            "name": "basic_auth",
            "description": "Basic Authentication"
        },
        "token": {
            "type": "apiKey",
            "description": "API Token Authentication",
            "name": "apikey",
            "in": "header"
        }
    },
    "security": [
        {
            "basic_auth": [ ]
        },
        {
            "token": [ ]
        }
    ],
    "paths": {
        //somthing
    },
    "definitions": {  
        //something    
    }
}
"paths": {
  "/something:": {
    "get": {
      "security": [],
      ...
    }
  }
}

此外,您的规范无效:

  • 删除
    匿名\u auth

  • basic\u auth
    中删除
    name
    -
    name
    仅用于
    apiKey
    安全方案中,以指定将包含API密钥的标头或查询参数的名称


  • 我想从方法中删除锁号,这将表示它为匿名方法。这将从Swagger UI中的这些操作中删除锁号。你试过这个吗?