欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python+flask編寫接口實例詳解

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

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

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

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

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

在這里插入圖片描述

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

然后在項目中右鍵open interminal便可以使用pip安裝需要的庫了,如下

在這里插入圖片描述

postman

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

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

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

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

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

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)入需要用到的庫,如果報紅,那就是沒有安裝,使用pip安裝即可,跨域下兩行這樣寫上是為了防止前端報出跨域問題錯誤(我也不太清楚,前端一點不會,實際項目中用到的)。

下面就開始接口的編寫:

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

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

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

我們右鍵運行這個py文件,會看到這樣

在這里插入圖片描述

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

在這里插入圖片描述

此時的數(shù)據(jù)形式就是json形式的,可以供前端直接調(diào)用的了,因為我也是摸索著自學(xué),沒有進行系統(tǒng)的學(xué)習(xí),所以只能這樣說明,但實際使用中還是挺簡單的,主要得益于python強大的數(shù)據(jù)處理能力,繼續(xù)加油。

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

相關(guān)文章

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

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

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

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

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

    python 實現(xiàn)Requests發(fā)送帶cookies的請求

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

    selenium自動化測試簡單準備

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

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

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

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

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

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

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

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

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

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

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

    python粘包問題及socket套接字編程詳解

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

最新評論