【接口文檔】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.pswp.cn/news/455921.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/455921.shtml
英文地址,請注明出處:http://en.pswp.cn/news/455921.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

HTML中的列表

HTML列表 無序列表 在網頁上定義一個無編號的內容列表可以用<ul>、<li>配合使用來實現&#xff0c;代碼如下&#xff1a; <ul><li>列表文字一</li><li>列表文字二</li><li>列表文字三</li> </ul>在網頁上生成的列…

【ujson】pip安裝ujson報錯: error:Microsoft Visual C++ 14.0 is required

在win10上pip安裝ujson報錯 在使用pip安裝依賴包ujson時&#xff0c;遇到了問題&#xff0c;如下&#xff1a; building ujson extension error: Microsoft Visual C 14.0 is required. Get it with "Microsoft Visual C Build Tools": http://landinghub.visua…

HTML中的表格

HTML表格 table常用標簽 1、table標簽&#xff1a;聲明一個表格 2、tr標簽&#xff1a;定義表格中的一行 3、td和th標簽&#xff1a;定義一行中的一個單元格&#xff0c;td代表普通單元格&#xff0c;th表示表頭單元格 table常用屬性&#xff1a; 1、border 定義表格的…

CS224n筆記13 卷積神經網絡

為什么80%的碼農都做不了架構師&#xff1f;>>> 本文由碼農場同步&#xff0c;最新版本請查看原文&#xff1a;http://www.hankcs.com/nlp/cs224n-convolutional-neural-networks.html 補充了NLP中相對冷門的CNN&#xff0c;談了談調參與發論文的潛規則。從RNN到CN…

android tcp socket框架_socket網絡編程知識梳理,讓你學會造輪子的能力

在前面幾篇中&#xff0c;我給大家介紹了socket的相關知識&#xff0c;也給出了詳細的代碼&#xff0c;從socket的基本介紹&#xff0c;到IO多路復用&#xff0c;以及粘包拆包&#xff0c;最后到心跳包問題。總的來說大概都把socket網絡編程中能碰見的問題都講了&#xff0c;但…

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

學了264有將近3個月有余&#xff0c;好多時候都在學習老畢的書和反復看JM86的代碼&#xff0c;最近才找到264分析兩大利器&#xff1a;264VISA和Elecard StreamEye Tools。不由得感嘆&#xff0c;恨不逢同時。 簡單的說下這兩個軟件&#xff1a; 264visa 強力的h264實時分析工具…

【解決】Django錯誤(1146,Table 'xxxx.django_session' doesn't exist)

報錯 解決辦法&#xff0c;settings.py中取消這行注釋&#xff0c;講session放緩存中 沒執行遷移的話&#xff0c;可能是debugtoolbar 把內容存儲在session中了 session最后也是放在redis里面的

QTP提供的編程接口實現對QTP操作

我們可以通過調用 Automation Object Model 里的對象接口 ,來實現對QTP 的操作,如打開 /運行腳本等動作Automation object model 的對象結構圖如下 (摘自QTP 參考手冊 )最新內容請見作者的GitHub頁&#xff1a;http://qaseven.github.io/

正態性檢驗ks和sw區別_非參數檢驗思路總結,清晰理解就靠它了!

1. 何時使用非參數檢驗或許你還沒有理解什么是參數檢驗、非參數檢驗&#xff0c;但一定曾在無意之中使用過它們。如我們常用的方差分析、T檢驗&#xff0c;都屬于參數檢驗。參數檢驗&#xff0c;就是假定數據服從某種分布&#xff0c;通過樣本信息對總體參數進行檢驗。因而在分…

【Python基礎入門系列】第01天:環境搭建

其實 Python 已經是一個很老的編程語言了&#xff0c;到現在&#xff08;2019年&#xff09; Python 已經高齡 28 歲&#xff0c;比很多程序員的年齡都大。現在之所以這么流行和社區、人工智能的發展&#xff0c;有很大的關系。 千里之行始于足下&#xff0c;今天我們先來學習…

POC問題匯總

我以IBPBP的編碼結構編了15幀&#xff08;在encoder.cfg中令FramesToBeEncoded 15 &#xff09;&#xff0c;但編碼完成后實際編碼的幀數是29&#xff08;1I幀&#xff0c;14P幀&#xff0c;14B幀&#xff09;&#xff0c;不太明白實際編碼的幀數為什么與FramesToBeEncode…

PyCharm的安裝以及破解

PyCharm PyCharm是一種Python IDE&#xff0c;帶有一整套可以幫助用戶在使用Python語言開發時提高其效率的工具&#xff0c;比如調試、語法高亮、Project管理、代碼跳轉、智能提示、自動完成、單元測試、版本控制。此外&#xff0c;該IDE提供了一些高級功能&#xff0c;以用于…

注解(一)- 基礎知識與運行時注解

在java和android 中&#xff0c;注解的運用非常廣泛&#xff0c;很多的類庫&#xff0c;第三方框架中都用到了注解。所以我們有必要來熟悉注解的相關知識。 Annotation&#xff0c;注解&#xff08;也稱為元數據&#xff09;&#xff0c;可以為我們在代碼中添加額外的信息&…

【Python基礎入門系列】第02天:Python 基礎語法

Python 語言與 Perl&#xff0c;C 和 Java 等語言有許多相似之處。但是&#xff0c;也存在一些差異。在本章中我們將來學習 Python 的基礎語法&#xff0c;讓你快速學會Python 編程。 開始你的第一個 Python 程序 Python 標識符 在 Python 里&#xff0c;標識符由字母、數字、…

如何理解操作系統的不確定性_溫度最低-273度,最高卻能有1.4億億億億度,如何定義的?...

地球繞太陽公轉&#xff0c;太陽直射點在南北回歸線之間往復的移動&#xff0c;也讓地球上出現了一年四季的變化冷熱交替&#xff0c;對于溫度我們有最直觀的感受冷暖自知&#xff0c;但僅限于很小的溫度范圍&#xff0c;在中國東北地區冬天最低溫度可以低于零下30攝氏度&#…

H.264中POC類型之探討

有 B 圖像的場合。POC 表示的是圖像顯示順序。由于POC對于參考序列的初始化,重排序及標記關系重大,所以做了如下的分析&#xff0c;以下討論情況是針對幀編碼。 pic_order_cnt_type0的時候&#xff1a; poc與frame_num沒有直接的關系&#xff0c;是顯式地出現在bit流中為pic_o…

不再單打獨斗?中國移動聯合多企業組建醫療數據公司

中國移動 6月20日消息&#xff0c;中國移動通信集團公司與浪潮集團有限公司作為發起方&#xff0c;共同組建中國健康醫療大數據股份有限公司&#xff0c;在中國移動總部舉行投資意向簽約儀式。 國家衛生和計劃生育委員會副主任金小桃,國務院國有資產監督管理委員會副主任徐福順…

【Python基礎入門系列】第03天:Python 變量與數據類型

這篇文章我們學習 Python 變量與數據類型 Python 變量類型 變量存儲在內存中的值。這就意味著在創建變量時會在內存中開辟一個空間。 基于變量的數據類型&#xff0c;解釋器會分配指定內存&#xff0c;并決定什么數據可以被存儲在內存中。 因此&#xff0c;變量可以指定不同…

HTML中的表單

HTML表單 表單用于搜集不同類型的用戶輸入&#xff0c;表單由不同類型的標簽組成&#xff0c;實現一個特定功能的表單區域&#xff08;比如&#xff1a;注冊&#xff09;&#xff0c; 首先應該用標簽來定義表單區域整體&#xff0c;在此標簽中再使用不同的表單控件來實現不同…

20169210 2016-2017-2《網絡攻防實踐》第八周總結

教材 一、Linux操作系統基本礦建概述 1、Linux操作系統發展與現狀 跨平臺的硬件支持&#xff1b;豐富的軟件支持&#xff1b;多用戶多任務&#xff1b;可靠的安全性&#xff1b;良好的穩定性&#xff1b;完善的網絡功能2、Linux系統結構 1&#xff09;Linux進程與線程管理機制2…