当前位置:  开发笔记 > 编程语言 > 正文

Django REST Swagger:如何在Swagger设置中使用安全部分?

如何解决《DjangoRESTSwagger:如何在Swagger设置中使用安全部分?》经验,为你挑选了0个好方法。

我正在尝试为SecurityDefinition构建Swagger设置,以便在openapi.json中获得以下结果:

"securityDefinitions": {
  "password": {
    "type": "oauth2",
    "tokenUrl": "http://example.com/oauth/token",
    "flow": "password",
    "scopes": {
      "write": "allows modifying resources",
      "read": "allows reading resources"
    }
  }
},
"security": [{
  "password": ["read", "write"]
}]

在我的settings.py中,我添加了以下swagger设置:

# Swagger settings
SWAGGER_SETTINGS = {
  "SECURITY_DEFINITIONS": {
    "password": {
        "type": "oauth2",
        "tokenUrl": "http://example.com/oauth/token",
        "flow": "password",
        "scopes": {
            "write": "allows modifying resources",
            "read": "allows reading resources"
        }
     }
  },
  "SECURITY": [{
    "password": ["read", "write"]
  }]
}

问题是在Swagger生成的openapi.json中没有securitydict,我也不知道它是如何生成的.

下面,介绍了生成的openapi.json:

{
   "info": {
       "title": "Example Service API",
       "version": ""
   },
   "host": "http://example.com",
   "swagger": "2.0",
   "securityDefinitions": {
       "password": {
           "type": "oauth2",
           "scopes": {
               "write": "allows modifying resources",
               "read": "allows reading resources"
           },
           "tokenUrl": "http://example.com/oauth/token",
           "flow": "password"
       }
   },
   "paths": {...}
}

有没有更好的方法在我的Swagger设置中描述这个概念?或者你能描述一下这个过程以及它是如何工作以生成openapi.json文件的吗?

推荐阅读
乐韵答题
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有