测试开发——搭建一个简单 web服务(flask框架基础)项目实战
生活随笔
收集整理的這篇文章主要介紹了
测试开发——搭建一个简单 web服务(flask框架基础)项目实战
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
搭建一個簡單 web服務-flask框架
- 一、什么是wsgi?
- 二、搭建一個簡單 web服務
- 三、擴展
- 四、請求加參數的情況
- 五、安裝flask
一、什么是wsgi?
wsgi是webserver和application的傳話筒,起橋梁通信的作用。
二、搭建一個簡單 web服務
# coding:utf-8# 步驟: # 搭建服務 # 監聽動作 while循環,每隔幾秒鐘要去看看有沒有請求發過來 # 處理程序 # 返回數據到套接字,生成一個響應對象 from wsgiref.simple_server import make_serverdef app(env, make_reponse):# env 獲取相關數據——環境變量# make_reponse(狀態碼:header)make_reponse("200 ok", [('content-type', 'text/plain')])return [b"hello,hanhanwang"] # b為byte類型server = make_server("", 8000, app) server.serve_forever()運行情況:(下同!)
三、擴展
如果出現很多的條件分支都是==,那就用字典去封裝。(這樣的優勢:更靈活,修改添加起來很方便)
代碼簡化:
# coding:utf-8# 步驟: # 搭建服務 # 監聽動作 while循環,每隔幾秒鐘要去看看有沒有請求發過來 # 處理程序 # 返回數據到套接字,生成一個響應對象 from wsgiref.simple_server import make_serverdef index():return "hello,I'm index!"def register():return "hello,please register!"def login():return "hello,please login!"# 這是一段路由 集中管理(有點像Django框架) patterns = {"/": index,"/register": register,"/login": login, }def app(env, start_resp):# env 獲取相關數據——環境變量# start_resp(狀態碼:header)url = env.get("PATH_INFO")if (url is None) or (url not in patterns.keys()):start_resp("404 not found", [('content-type', 'text/plain')])return [b"sorry!page not found!"] # b為byte類型start_resp("200 ok", [('content-type', 'text/plain')])respon = patterns.get(url)if respon is None:start_resp("404 not found", [('content-type', 'text/plain')])return [b"sorry!page not found!"] # b為byte類型return [respon().encode()]server = make_server("", 8001, app) server.serve_forever()https://blog.csdn.net/hanhanwanghaha寶藏女孩 歡迎您的關注!
歡迎關注微信公眾號:寶藏女孩的成長日記
如有轉載,請注明出處(如不注明,盜者必究)
四、請求加參數的情況
# coding:utf-8# 步驟: # 搭建服務 # 監聽動作 while循環,每隔幾秒鐘要去看看有沒有請求發過來 # 處理程序 # 返回數據到套接字,生成一個響應對象 import json from wsgiref.simple_server import make_serverdef index(request):return requestdef register(request):return requestdef login(request):return request# 這是一段路由 集中管理(有點像Django框架) patterns = {"/": index,"/register": register,"/login": login, }def app(env, start_resp):# app : flask核心對象# env 獲取相關數據——環境變量# start_resp(狀態碼:header)url = env.get("PATH_INFO")params = env.get("QUERY_STRING")if (url is None) or (url not in patterns.keys()):# start_resp("404 not found", [('content-type', 'text/plain')])# return [b"sorry!page not found!"] # b為byte類型# start_resp("404 not found", [('content-type', 'text/html')]) #如果想返回html,就直接改成('content-type', 'text/html')# return [b"<p style='color:green'>sorry!page not found!</p>"] # b為byte類型start_resp("404 not found", [('content-type', 'application/json')])result = json.dumps({"msg": "page is not found"})return [result.encode()]start_resp("200 ok", [('content-type', 'text/plain')])respon = patterns.get(url)if respon is None:start_resp("404 not found", [('content-type', 'text/plain')])return [b"sorry!page not found!"] # b為byte類型return [respon(params).encode()]server = make_server("", 8002, app) server.serve_forever()都說用了django(相比flask來說更具效率),都不會喜歡flask了,但老師說,我們學習flask就是為了采坑及對web框架有更深入的認識,當我們在django中遇到問題,處理起來也會比較容易一點。
五、安裝flask
pip install flask如圖:
接下來就會詳細記錄flask框架實戰重點,后面繼續更博!
我還是個flask小白,如果大佬看到,希望可以提上您寶貴的建議,感激不盡!
https://blog.csdn.net/hanhanwanghaha歡迎關注這個超級無敵可愛的人鴨,有什么問題留言私信皆可,看見必回!
創作不易,如有轉載,請注明出處
總結
以上是生活随笔為你收集整理的测试开发——搭建一个简单 web服务(flask框架基础)项目实战的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python闭包与装饰器的代码解释
- 下一篇: 047 一维数据的格式化和处理