Python-接口開發(fā)入門解析
一、開發(fā)接口的作用
1、mock接口:模擬一些接口。有一些有關(guān)聯(lián)的接口,在別的接口沒有開發(fā)好的時(shí)候,需要用這個(gè)接口,就可以寫一個(gè)假接口,返回想要的結(jié)果來模擬這個(gè)接口。
2、知道服務(wù)端的開發(fā)邏輯,有助于測(cè)試;
3、比如不想讓其他人看很多數(shù)據(jù)庫中的數(shù)據(jù),可以通過接口只返回一部分?jǐn)?shù)據(jù)。
二、開發(fā)一個(gè)接口
1、flask是一個(gè)輕量級(jí)的開發(fā)框架
__name__:代表當(dāng)前這個(gè)python文件
server = flask.Flask(__name__) :把當(dāng)前這個(gè)python文件,當(dāng)做一個(gè)服務(wù)

2、一個(gè)無需傳參數(shù)的get接口
其中,‘index'是接口的路徑。
method如果不寫,默認(rèn)為get。如果需要支持多種,可以寫成['get','post']
port是端口號(hào),默認(rèn)為5000。debug=True,這樣改了代碼之后,不需要重啟服務(wù),會(huì)自動(dòng)重啟。

先運(yùn)行,然后用postman調(diào)用該接口,如下

可以看到,中文的編碼之后的,想顯示中文,按照下圖方法即可

3、一個(gè)post接口
開發(fā)一個(gè)注冊(cè)接口,請(qǐng)求參數(shù)為:username和passwd。如果數(shù)據(jù)庫中有該用戶,就返回用戶已存在。如果該用戶不存在,就在數(shù)據(jù)庫插入一條數(shù)據(jù),返回注冊(cè)成功。
下面的代碼需要連接數(shù)據(jù)庫,連接數(shù)據(jù)庫部分省略了。

為了讓其他人也可以訪問這個(gè)接口,可以用如下方法:

host=0.0.0.0表示只要在同一個(gè)局域網(wǎng),別人訪問的時(shí)候,用你的ip就可以訪問了。ip指的是電腦的ip。
假如電腦的ip是10.2.88.122,那么別人電腦訪問10.2.88.122:8999/reg即可。
三、開發(fā)接口目錄
目錄結(jié)構(gòu)如下

主目錄命名為了my_api,可以根據(jù)實(shí)際情況命名
bin:可執(zhí)行文件,即啟動(dòng)程序
config:配置文件
data:放置一些數(shù)據(jù),如sql、入?yún)⒌?/p>
lib:主邏輯
logs:log
readme:一些說明
我們把上面的代碼分到各個(gè)目錄里面
1、配置文件config-setting.py
存放一些常量,如數(shù)據(jù)庫的信息,redis的信息,端口號(hào)等

2、lib目錄下tools.py
tools文件里寫了怎么操作sql和redis
倒入setting里的信息,需要把my_api加到環(huán)境變量里。
在my_api文件夾上右擊,選擇mark directory as ->Source Root
導(dǎo)入setting
如果常量太多,則可以直接from config import setting
使用時(shí),setting.MYSQL_INFO。用setting加點(diǎn)的方法。

3、lib目錄下interface.py
這里寫接口的主邏輯

4、bin目錄下start.py
先從interface中導(dǎo)入server,從setting中導(dǎo)入端口號(hào)。
啟動(dòng)程序時(shí),只需運(yùn)行start.py即可

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python+OpenCV實(shí)現(xiàn)基本的圖像處理操作
說到圖像處理,那必然要提到opencv模塊了。本文將從最基本的opencv模塊在圖像的基本操作上說起,利用Python+OpenCV實(shí)現(xiàn)圖像的讀取保存等,感興趣的可以了解一下2022-07-07
python提取具有某種特定字符串的行數(shù)據(jù)方法
今天小編就為大家分享一篇python提取具有某種特定字符串的行數(shù)據(jù)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-12-12
Python虛擬環(huán)境管理工具virtualenv詳解
在Python開發(fā)過程中,我們常常需要管理不同項(xiàng)目的依賴,每個(gè)項(xiàng)目可能依賴不同版本的Python庫,因此,如何有效管理這些庫成為了開發(fā)者日常工作中不可忽視的問題,需要的朋友可以參考下2024-12-12
從零學(xué)Python之入門(二)基本數(shù)據(jù)類型
這是繼“hello world”之后的第二篇入門級(jí)基礎(chǔ)知識(shí),以后這個(gè)系列會(huì)按照入門、進(jìn)階、精通三個(gè)分類進(jìn)行下去,歡迎高手們來拍磚2014-05-05
pyqt5 lineEdit設(shè)置密碼隱藏,刪除lineEdit已輸入的內(nèi)容等屬性方法
今天小編就為大家分享一篇pyqt5 lineEdit設(shè)置密碼隱藏,刪除lineEdit已輸入的內(nèi)容等屬性方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-06-06
利用pyinstaller或virtualenv將python程序打包詳解
這篇文章主要給大家介紹了利用pyinstaller將python程序打包的相關(guān)資料,文中介紹的非常詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來一起看看吧。2017-03-03

