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

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

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

依賴庫(kù)

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標(biāo)準(zhǔn)的io方法,都替換成gevent中的同名方法,遇到io阻塞gevent自動(dòng)進(jìn)行協(xié)程切換
monkey.patch_all()
 
app = Flask(__name__)
 
 
# 請(qǐng)求返回實(shí)體
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("進(jìn)度回調(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("遇事不決,可問(wèn)春風(fēng)。")
    WSGIServer(('0.0.0.0', 8383), app).serve_forever()

使用postman驗(yàn)證結(jié)果

總結(jié)

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

如果本文對(duì)你有幫助,請(qǐng)點(diǎn)個(gè)贊支持一下吧。

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

相關(guān)文章

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    Python爬蟲(chóng)實(shí)戰(zhàn)之虎牙視頻爬取附源碼

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

    python3 線性回歸驗(yàn)證方法

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

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

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

最新評(píng)論