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

python http服務flask架構(gòu)實用代碼詳解分析

 更新時間:2021年10月27日 17:05:45   作者:劍客阿良_ALiang  
本篇文章主要分享一個python的簡單http服務flask架構(gòu)。目前主流的python的服務框架有django、flask,相較于django來說,flask更小巧玲瓏。至于并發(fā)的問題,使用了gevent協(xié)程io進行處理

依賴庫

flask安裝,使用豆瓣源加速。

pip install flask -i https://pypi.douban.com/simple

gevent安裝,使用豆瓣源加速。

pip install gevent -i https://pypi.douban.com/simple

代碼

#!/user/bin/env python
# coding=utf-8
"""
@project : TestDemo
@author  : huyi
@file   : app.py
@ide    : PyCharm
@time   : 2021-10-15 11:58:44
"""
from flask import Flask, request
from gevent.pywsgi import WSGIServer
from gevent import monkey
import json
 
# 將python標準的io方法,都替換成gevent中的同名方法,遇到io阻塞gevent自動進行協(xié)程切換
monkey.patch_all()
 
app = Flask(__name__)
 
 
# 請求返回實體
class TestResponse:
    def __init__(
            self,
            code,
            success,
            msg, data):
        self.code = code
        self.success = success
        self.msg = msg
        self.data = data
 
 
@app.route('/progress', methods=['POST'])
def progress():
    request_data = json.loads(request.data)
    print("進度回調(diào):{}".format(request_data))
    return json.dumps(
        TestResponse(0, True, "progress callback success", None),
        default=lambda obj: obj.__dict__,
        sort_keys=True,
        indent=4)
 
 
@app.route('/result', methods=['POST'])
def result():
    request_data = json.loads(request.data)
    print("結(jié)果回調(diào):{}".format(request_data))
    return json.dumps(
        TestResponse(0, True, "result callback success", None),
        default=lambda obj: obj.__dict__,
        sort_keys=True,
        indent=4)
 
 
if __name__ == '__main__':
    print("遇事不決,可問春風。")
    WSGIServer(('0.0.0.0', 8383), app).serve_forever()

使用postman驗證結(jié)果

總結(jié)

該代碼架構(gòu)簡單有效,不用加過多繁重的東西。如果需要異步非阻塞接口調(diào)用的話,可以加個線程池,把執(zhí)行內(nèi)容扔個線程出去,一樣適用。

如果本文對你有幫助,請點個贊支持一下吧。

到此這篇關(guān)于python http服務flask架構(gòu)實用代碼詳解分析的文章就介紹到這了,更多相關(guān)python http服務內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Django JSONField的自動轉(zhuǎn)換思路詳解(django自定義模型字段)

    Django JSONField的自動轉(zhuǎn)換思路詳解(django自定義模型字段)

    如果想實現(xiàn)JSONField的自動轉(zhuǎn)換,可以使用Django REST framework的JSONField,或者自定義一個字段類并覆蓋from_db_value()和get_prep_value()方法來實現(xiàn)這個功能,這篇文章主要介紹了Django JSONField的自動轉(zhuǎn)換(django自定義模型字段)問題,需要的朋友可以參考下
    2023-06-06
  • 詳解Python匹配多行文本塊的正則表達式

    詳解Python匹配多行文本塊的正則表達式

    這篇文章主要介紹了Python?匹配多行文本塊的正則表達式,該解決方案折衷了已知和未知模式的幾種方法,并解釋了匹配模式的工作原理,本文給大家介紹的非常詳細,需要的朋友可以參考下
    2023-06-06
  • Python中函數(shù)的用法實例教程

    Python中函數(shù)的用法實例教程

    這篇文章主要介紹了Python中函數(shù)的用法,以數(shù)值計算的實例方式講述了Python程序設(shè)計中函數(shù)的功能機抽象化特點,需要的朋友可以參考下
    2014-09-09
  • Python跨文件調(diào)用函數(shù)以及在一個文件中執(zhí)行另一個文件

    Python跨文件調(diào)用函數(shù)以及在一個文件中執(zhí)行另一個文件

    這篇文章主要給大家介紹了關(guān)于Python跨文件調(diào)用函數(shù)以及在一個文件中執(zhí)行另一個文件的相關(guān)資料,文中通過實例代碼介紹的非常詳細,對大家學習或者使用Python具有一定的參考學習價值,需要的朋友可以參考下
    2022-12-12
  • Python中最快的循環(huán)姿勢實例詳解

    Python中最快的循環(huán)姿勢實例詳解

    python給我們提供了多個循環(huán)方法,比如while循環(huán)、for循環(huán)等,下面這篇文章主要給大家介紹了關(guān)于Python中最快的循環(huán)姿勢,需要的朋友可以參考下
    2021-11-11
  • Python查找不限層級Json數(shù)據(jù)中某個key或者value的路徑方式

    Python查找不限層級Json數(shù)據(jù)中某個key或者value的路徑方式

    今天小編就為大家分享一篇Python查找不限層級Json數(shù)據(jù)中某個key或者value的路徑方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • JAVA及PYTHON質(zhì)數(shù)計算代碼對比解析

    JAVA及PYTHON質(zhì)數(shù)計算代碼對比解析

    這篇文章主要介紹了JAVA及PYTHON質(zhì)數(shù)計算代碼對比,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-06-06
  • Python爬蟲實戰(zhàn)之虎牙視頻爬取附源碼

    Python爬蟲實戰(zhàn)之虎牙視頻爬取附源碼

    讀萬卷書不如行萬里路,學的扎不扎實要通過實戰(zhàn)才能看出來,本篇文章手把手帶你爬取虎牙短視頻數(shù)據(jù),大家可以在實戰(zhàn)過程中查缺補漏,加深學習
    2021-10-10
  • python3 線性回歸驗證方法

    python3 線性回歸驗證方法

    今天小編就為大家分享一篇python3 線性回歸驗證方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • 基于Pygame實現(xiàn)簡單的貪吃蛇游戲

    基于Pygame實現(xiàn)簡單的貪吃蛇游戲

    Pygame是一個專門用來開發(fā)游戲的Python模塊,主要用于開發(fā)、設(shè)計?2D?電子游戲。本文主要為大家介紹了通過Pygame制作一個簡單的貪吃蛇游戲,感興趣的同學可以關(guān)注一下
    2021-12-12

最新評論