亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python+flask編寫接口實(shí)例詳解

 更新時(shí)間:2021年05月08日 09:20:54   作者:weixin-0x6B6473  
這篇文章主要介紹了python+flask編寫接口實(shí)例詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

環(huán)境:Pycharm ;其他環(huán)境:安裝Anaconda

最近在做一個(gè)小型項(xiàng)目練手,涉及到大量的IP和相關(guān)數(shù)據(jù)處理,所以選用了Python來(lái)處理數(shù)據(jù),但是處理完怎么給前端調(diào)用呢,今天這篇就是在Python方便地處理完數(shù)據(jù)后以接口形式把數(shù)據(jù)返回給前端。

flask就是使用Python編寫接口實(shí)例的關(guān)鍵庫(kù),先配置項(xiàng)目:

①(這一步可以使用Python默認(rèn)解釋器,但是后續(xù)安裝庫(kù)可能還需要配置,建議使用Anaconda)首先打開PyCharm,在file->settings->Project->project interpreter改為使用Anaconda的python.exe,這里的python.exe在安裝Anaconda文件夾下。

在這里插入圖片描述

②如果根據(jù)上面配置了Anaconda的解釋器,那么此時(shí)flask默認(rèn)已經(jīng)包含在了項(xiàng)目庫(kù)中,如果需要安裝,可以先參考Windows下pip和換源

然后在項(xiàng)目中右鍵open interminal便可以使用pip安裝需要的庫(kù)了,如下

在這里插入圖片描述

postman

postman是最常用的接口測(cè)試工具,可以下載客戶端也可以使用網(wǎng)頁(yè)版,自行下載哦

json數(shù)據(jù)格式

首先我們知道,一般前端請(qǐng)求數(shù)據(jù)的格式都為json格式,通俗來(lái)看就是鍵值對(duì)形式,如下:

{
	"id":"001",
	"name":"kong"
}

前端只需要拿到鍵(如id),就能拿到鍵所對(duì)應(yīng)的值(001),這樣就可以拿到數(shù)據(jù),那怎么把數(shù)據(jù)處理成json形式就屬于編寫接口要做的事了。
我們只知道python梳理數(shù)據(jù)方便,但是怎么把數(shù)據(jù)處理成上面的json形式呢,
先看完整測(cè)試代碼:

from flask import Flask, jsonify
from flask_cors import CORS

# 跨域
app = Flask(__name__)
cors = CORS(app, supports_credentials=True)


@app.route("/", methods=["GET"])
def hello():
    return "Hello World"


@app.route("/one", methods=["GET"])
def test():
    id_1 = "001"
    id_2 = "002"
    name_1 = "kong"
    name_2 = "chen"
    data = {"id1":id_1, "id2":id_2, "name1":name_1,"name2":name_2}
    return jsonify(data)


if __name__ == '__main__':
    app.run(host='0.0.0.0', threaded=True)

這段代碼中,前兩行是導(dǎo)入需要用到的庫(kù),如果報(bào)紅,那就是沒有安裝,使用pip安裝即可,跨域下兩行這樣寫上是為了防止前端報(bào)出跨域問(wèn)題錯(cuò)誤(我也不太清楚,前端一點(diǎn)不會(huì),實(shí)際項(xiàng)目中用到的)。

下面就開始接口的編寫:

@app.route()是設(shè)置路由地址,一般操作系統(tǒng)會(huì)給其分配一個(gè)端口,前端調(diào)用時(shí)就會(huì)尋址到這個(gè)端口,從其中某一個(gè)接口取出所需要的數(shù)據(jù),括號(hào)里是請(qǐng)求方式,一般是POST和GET這兩種,這里就是用最簡(jiǎn)單的GET形式。

第一個(gè)接口就是直接在端口首頁(yè)返回一個(gè)"Hello World",我們重點(diǎn)說(shuō)的是第二個(gè),我們看到定義了四個(gè)字符串,并最終合成了一個(gè)data字典(Python字典也是鍵值對(duì)形式),我這里故意在名字上面做了一些差異,其中id_1就是接口處理的變量,也就是說(shuō)它存儲(chǔ)的是要返回給前端的值,但是前端要拿到這個(gè)值,是通過(guò)""中的id1實(shí)現(xiàn)的,也就是說(shuō)前端請(qǐng)求這個(gè)鍵的值,就可以拿到對(duì)應(yīng)的id_1的值。

最后兩行是程序的主函數(shù),最后一行代表啟動(dòng)這個(gè)接口文件,一般在本機(jī)測(cè)試時(shí)使用host = 127.0.0.1或默認(rèn)app.run()即可,threaded = True表示可以并行訪問(wèn)接口。

我們右鍵運(yùn)行這個(gè)py文件,會(huì)看到這樣

在這里插入圖片描述

此時(shí)按住CTRL點(diǎn)這個(gè)地址既可以打開瀏覽器,可以看到一個(gè)不經(jīng)調(diào)用直接返回的頁(yè)面,顯示Hello World,我們主要測(cè)試下面一個(gè)接口:打開postman,將這個(gè)地址賦值進(jìn)去,并根據(jù)接口route中的路徑添加,如下:

在這里插入圖片描述

此時(shí)的數(shù)據(jù)形式就是json形式的,可以供前端直接調(diào)用的了,因?yàn)槲乙彩敲髦詫W(xué),沒有進(jìn)行系統(tǒng)的學(xué)習(xí),所以只能這樣說(shuō)明,但實(shí)際使用中還是挺簡(jiǎn)單的,主要得益于python強(qiáng)大的數(shù)據(jù)處理能力,繼續(xù)加油。

到此這篇關(guān)于python+flask編寫接口實(shí)例詳解的文章就介紹到這了,更多相關(guān)python lask編寫接口內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python中的變量及簡(jiǎn)單數(shù)據(jù)類型應(yīng)用

    Python中的變量及簡(jiǎn)單數(shù)據(jù)類型應(yīng)用

    這篇文章主要介紹了Python中的變量及簡(jiǎn)單數(shù)據(jù)類型應(yīng)用,簡(jiǎn)單的數(shù)據(jù)類型包括字符串和數(shù)字,更多詳細(xì)內(nèi)容,需要的小伙伴可以參考一下
    2022-03-03
  • 一文秒懂pandas中iloc()函數(shù)

    一文秒懂pandas中iloc()函數(shù)

    iloc[]函數(shù)屬于pandas庫(kù)全稱為index?location,即對(duì)數(shù)據(jù)進(jìn)行位置索引,從而在數(shù)據(jù)表中提取出相應(yīng)的數(shù)據(jù),本文通過(guò)實(shí)例代碼介紹pandas中iloc()函數(shù),感興趣的朋友一起看看吧
    2023-04-04
  • python 實(shí)現(xiàn)Requests發(fā)送帶cookies的請(qǐng)求

    python 實(shí)現(xiàn)Requests發(fā)送帶cookies的請(qǐng)求

    這篇文章主要介紹了python 實(shí)現(xiàn)Requests發(fā)送帶cookies請(qǐng)求的方法,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2021-02-02
  • selenium自動(dòng)化測(cè)試簡(jiǎn)單準(zhǔn)備

    selenium自動(dòng)化測(cè)試簡(jiǎn)單準(zhǔn)備

    本文主要介紹了selenium自動(dòng)化測(cè)試簡(jiǎn)單準(zhǔn)備,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Python實(shí)現(xiàn)讀取文件的方法總結(jié)

    Python實(shí)現(xiàn)讀取文件的方法總結(jié)

    這篇文章主要為大家詳細(xì)介紹了Python中實(shí)現(xiàn)讀取文件效果的幾種方法總結(jié),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-09-09
  • 基于python實(shí)現(xiàn)的百度新歌榜、熱歌榜下載器(附代碼)

    基于python實(shí)現(xiàn)的百度新歌榜、熱歌榜下載器(附代碼)

    這篇文章主要介紹了基于python實(shí)現(xiàn)的百度新歌榜、熱歌榜下載器(附代碼),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • python的getattr和getattribute攔截內(nèi)置操作實(shí)現(xiàn)

    python的getattr和getattribute攔截內(nèi)置操作實(shí)現(xiàn)

    在Python中,getattr和getattribute是用于動(dòng)態(tài)屬性訪問(wèn)和自定義屬性訪問(wèn)行為的重要工具,本文主要介紹了python的getattr和getattribute攔截內(nèi)置操作實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • Python3 requests模塊如何模仿瀏覽器及代理

    Python3 requests模塊如何模仿瀏覽器及代理

    這篇文章主要介紹了Python3 requests模塊如何模仿瀏覽器及代理,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • Python利用psutil獲取CPU與內(nèi)存等硬件信息

    Python利用psutil獲取CPU與內(nèi)存等硬件信息

    psutil是Python的一個(gè)第三方庫(kù),提供了各種強(qiáng)大的硬件信息查閱功能,這篇文章主要為大家介紹了如何利用psutil獲取CPU與內(nèi)存等硬件信息,需要的可以參考一下
    2023-07-07
  • python粘包問(wèn)題及socket套接字編程詳解

    python粘包問(wèn)題及socket套接字編程詳解

    這篇文章主要介紹了python粘包問(wèn)題及socket套接字編程詳解,之所以出現(xiàn)粘包,是因?yàn)閮蓚€(gè)數(shù)據(jù)非常小,然后間隔時(shí)間又短,或數(shù)據(jù)太大,一次取不完,下一次還會(huì)取這個(gè)大數(shù)據(jù),需要的朋友可以參考下
    2019-06-06

最新評(píng)論