【接口文档】Django restful framework中自动生成API文档

Django restful framework中自动生成API文档

 

一、Swagger概述

1.引言

当接口开发完成,紧接着需要编写接口文档。传统的接口文档使用Word编写,or一些接口文档管理平台进行编写,但此类接口文档维护更新比较麻烦,每次接口有变更,需要手动修改接口文档。为了改善这种情况,推荐使用Swagger来管理接口文档,实现接口文档的自动更新。也推荐淘宝后端写的RAP2在线接口文档。

2.Swagger简介

Swagger:是一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的Web服务。总体目标是使客户端和文件系统源代码作为服务器以同样的速度来更新。当接口有变动时,对应的接口文档也会自动更新。

Swagger优势:
1)Swagger可生成一个具有互动性的API控制台,开发者可快速学习和尝试API
2)Swagger可生成客户端SDK代码,用于不同平台上(Java、Python...)的实现
3)Swagger文件可在许多不同的平台上从代码注释中自动生成
4)Swagger有一个强大的社区,里面有许多强悍的贡献者

 

二、Swagger安装和配置

参考官网:https://github.com/marcgibbons/django-rest-swagger

自动生成api文档(不管是函数视图还是类视图都能显示)

1.安装rest_framework_swagger库

pip install django-rest-swagger

 

 

2.在项目下的 urls.py 中加入如下:

from rest_framework_swagger.views import get_swagger_viewschema_view = get_swagger_view(title='API文档')
urlpatterns += [path(r'docs/', schema_view),
]

 

 

3.在创建的django项目下的settings中加入如下:

INSTALLED_APPS = ['rest_framework_swagger',]REST_FRAMEWORK = {'DEFAULT_SCHEMA_CLASS': 'rest_framework.schemas.AutoSchema'
}

 

 

4、生成的api文档界面如下:

可以通过定义注释格式来设置接口备注信息

 

 

5、DRF访问接口自带的界面如下:

 

 

更多分享以及Python之基础知识大全关注公众号【刘旺學長】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/455921.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【ujson】pip安装ujson报错: error:Microsoft Visual C++ 14.0 is required

在win10上pip安装ujson报错 在使用pip安装依赖包ujson时,遇到了问题,如下: building ujson extension error: Microsoft Visual C 14.0 is required. Get it with "Microsoft Visual C Build Tools": http://landinghub.visua…

CS224n笔记13 卷积神经网络

为什么80%的码农都做不了架构师?>>> 本文由码农场同步,最新版本请查看原文:http://www.hankcs.com/nlp/cs224n-convolutional-neural-networks.html 补充了NLP中相对冷门的CNN,谈了谈调参与发论文的潜规则。从RNN到CN…

android tcp socket框架_socket网络编程知识梳理,让你学会造轮子的能力

在前面几篇中,我给大家介绍了socket的相关知识,也给出了详细的代码,从socket的基本介绍,到IO多路复用,以及粘包拆包,最后到心跳包问题。总的来说大概都把socket网络编程中能碰见的问题都讲了,但…

264分析两大利器:264VISA和Elecard StreamEye Tools

学了264有将近3个月有余,好多时候都在学习老毕的书和反复看JM86的代码,最近才找到264分析两大利器:264VISA和Elecard StreamEye Tools。不由得感叹,恨不逢同时。 简单的说下这两个软件: 264visa 强力的h264实时分析工具…

【解决】Django错误(1146,Table 'xxxx.django_session' doesn't exist)

报错 解决办法,settings.py中取消这行注释,讲session放缓存中 没执行迁移的话,可能是debugtoolbar 把内容存储在session中了 session最后也是放在redis里面的

QTP提供的编程接口实现对QTP操作

我们可以通过调用 Automation Object Model 里的对象接口 ,来实现对QTP 的操作,如打开 /运行脚本等动作Automation object model 的对象结构图如下 (摘自QTP 参考手册 )最新内容请见作者的GitHub页:http://qaseven.github.io/

正态性检验ks和sw区别_非参数检验思路总结,清晰理解就靠它了!

1. 何时使用非参数检验或许你还没有理解什么是参数检验、非参数检验,但一定曾在无意之中使用过它们。如我们常用的方差分析、T检验,都属于参数检验。参数检验,就是假定数据服从某种分布,通过样本信息对总体参数进行检验。因而在分…

【Python基础入门系列】第01天:环境搭建

其实 Python 已经是一个很老的编程语言了,到现在(2019年) Python 已经高龄 28 岁,比很多程序员的年龄都大。现在之所以这么流行和社区、人工智能的发展,有很大的关系。 千里之行始于足下,今天我们先来学习…

PyCharm的安装以及破解

PyCharm PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于…

注解(一)- 基础知识与运行时注解

在java和android 中,注解的运用非常广泛,很多的类库,第三方框架中都用到了注解。所以我们有必要来熟悉注解的相关知识。 Annotation,注解(也称为元数据),可以为我们在代码中添加额外的信息&…

【Python基础入门系列】第02天:Python 基础语法

Python 语言与 Perl,C 和 Java 等语言有许多相似之处。但是,也存在一些差异。在本章中我们将来学习 Python 的基础语法,让你快速学会Python 编程。 开始你的第一个 Python 程序 Python 标识符 在 Python 里,标识符由字母、数字、…

如何理解操作系统的不确定性_温度最低-273度,最高却能有1.4亿亿亿亿度,如何定义的?...

地球绕太阳公转,太阳直射点在南北回归线之间往复的移动,也让地球上出现了一年四季的变化冷热交替,对于温度我们有最直观的感受冷暖自知,但仅限于很小的温度范围,在中国东北地区冬天最低温度可以低于零下30摄氏度&#…

不再单打独斗?中国移动联合多企业组建医疗数据公司

中国移动 6月20日消息,中国移动通信集团公司与浪潮集团有限公司作为发起方,共同组建中国健康医疗大数据股份有限公司,在中国移动总部举行投资意向签约仪式。 国家卫生和计划生育委员会副主任金小桃,国务院国有资产监督管理委员会副主任徐福顺…

【Python基础入门系列】第03天:Python 变量与数据类型

这篇文章我们学习 Python 变量与数据类型 Python 变量类型 变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。 因此,变量可以指定不同…

20169210 2016-2017-2《网络攻防实践》第八周总结

教材 一、Linux操作系统基本矿建概述 1、Linux操作系统发展与现状 跨平台的硬件支持;丰富的软件支持;多用户多任务;可靠的安全性;良好的稳定性;完善的网络功能2、Linux系统结构 1)Linux进程与线程管理机制2…

cad卸载_想重新安装CAD提示已经安装?不会卸载?进来教你卸载CAD

大家好,我是【小杰趣分享】,这里每天都会分享一下和电脑软件、电脑硬件相关的文章或视频。这一期小杰教大家怎么彻底卸载CAD!CAD这款软件是小杰见过最难卸载的软件了,不知道你们有没有遇到过卸载CAD想重新安装,却怎么都…

直击3.15 安防行业如何维护消费者权益

一年一度的315维权活动让众多行业为之惶恐,安防行业发展至今,和各行各业一样也同样面临着安防市场粗制滥造、假冒伪劣产品盛行的局面。 315今年的消费维权主题是 “网络诚信 消费无忧”,中国消费者协会副秘书长董祝礼表示,网络消费…

【Python基础入门系列】第04天:Python 流程控制

在编程的世界中,流程控制是程序员运行的基础,流程控制决定了程序按照什么样的方式去执行,本节给大家介绍 Python 流程控制相关语法。 if 语句 if 语句表示如何发生什么样的条件,执行什么样的逻辑。 Python程序语言指定任何非0和…

excel合并两列内容_还在为合并WPS表格(Excel)中两列内容而犯愁?此方法简单高效...

我们在处理WPS表格(Excel)数据时,时常需要将两列甚至更多列的内容合并显示在同一列中,就像这样:这个时候大家是怎么解决的呢?路人:复制粘贴So easy!小杜:不止两三行啊……路人:复制粘…

【Python基础入门系列】第05天:Python函数

前面我们写过九九乘法表,但如果我要七七乘法表或五五乘法表的话,你会看到三者代码极其类似,只是循环变量不同,那么如何做到代码重用,而不是简单拷贝黏贴修改呢,其实可是使用函数完成这一功能! 先来试着看一…