中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么使用flask輕松搭建mock服務

發布時間:2021-10-21 09:38:12 來源:億速云 閱讀:196 作者:iii 欄目:web開發

本篇內容主要講解“怎么使用flask輕松搭建mock服務”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么使用flask輕松搭建mock服務”吧!

做過接口測試的同學一定聽說過mock Server,大家會覺得其很神秘,很高大上!mock  Server出現的原因是現今的業務系統很少有孤立存在的,它們或多或少需要使用兄弟團隊或是其他公司提供的服務,這給我們的聯調和測試造成了麻煩。于是就有了解決方案——搭建一個臨時的server,模擬那些服務,提供數據進行聯調和測試。下圖很好的解釋了什么是Mock  server

怎么使用flask輕松搭建mock服務

Flask

Flask是一個Python編寫的Web 微框架,讓我們可以使用Python語言快速實現一個網站或Web服務。

怎么使用flask輕松搭建mock服務

Falsk的安裝

pip install flask

Flask構建一個web服務簡直太快了,7行代碼就可以搞定,helloword代碼如下:

from flask import Flask  app = Flask(__name__)  @app.route('/')  def index():       return 'Hello World'  if __name__ == '__main__':      app.run()

然后在ide中運行這個py文件,顯示如下:

怎么使用flask輕松搭建mock服務

在瀏覽器中輸入http://127.0.0.1:5000/ 可以看到瀏覽器中顯示Hello World

代碼分析如下:

@app.route('/')說明了你要訪問的url,'/'代表根目錄;

return 'Hello World'代表在瀏覽器中顯示Hello World,即請求http://127.0.0.1:5000/ 的返回值;

app.run()表示啟動mock 服務。

如果我們需要構建帶參數的get方法可以使用如下代碼:

@app.route('/check/<version>')  def check_version(version=None):     if version=='1':         return 'version=1.0'      elif version=='2':         return 'version=2.0'      else:         return 'bad version'

這里相當于是在url中輸入的參數

在瀏覽器輸入127.0.0.1:5000/check/2 會輸出version=2.0

在瀏覽器輸入127.0.0.1:5000/check/1會輸出version=1.0

在瀏覽器輸入127.0.0.1:5000/check/111會輸出bad version,

這個實例很容易模擬了我們需要的get方法的請求,判斷具體方法,然后返回相應的值。

如果我們需要創建post方法可以使用如下代碼:

from flask import Flask,request  @app.route('/login',methods=['POST'])  def login():      if request.method == 'POST':          val=str(request.data, encoding = "utf8")          print (val)          if val.find('admin')==-1:              return ' status 400,No such user! '          else:               return 'status 200,admin login'       else:             return ' status 403,login need post method'

通過RESTclient(Firefox插件)構建請求如下:

怎么使用flask輕松搭建mock服務

輸出admin login

代碼解析如下:

methods=['POST'] 限定了可以使用的http方法,只能使POST;

request.method 獲取request的方法;

request.data獲取request中data的值;

str(request.data, encoding = "utf8") 把request.data的值從bytes類型轉換到str類型。

好了,通過上面的實例我們就可以很輕松的模擬POST或者GET方法來構建Mock Server了!

Flask和Django的選擇

Django也是python web開發的主流框架,他與flask相比區別如下:

Flask提供了靈活性,簡單性和細粒度的控制。

Flask不受限制,讓你決定如何實現應用程序。

Django為我們的Web應用程序開發提供了管理面板,數據庫界面,目錄結構和ORM的全方位體驗。

如果我們只需要開發一個輕量級網站或者特定的微服務(比如mock  server),我們根本用不上Django自帶的大而全的組件和功能,這時我們應該毫不猶豫地選擇Flask;如果我們要開發包含各種功能的傳統企業級網站(比如電商,新聞內容管理,社交網站,辦公OA),使用Django能幫我們節省不少尋找或開發第三方擴展的精力。

到此,相信大家對“怎么使用flask輕松搭建mock服務”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

婺源县| 大同市| 甘泉县| 青铜峡市| 万载县| 双桥区| 安多县| 吉水县| 洪江市| 临沂市| 和龙市| 南昌市| 新乡县| 岢岚县| 望奎县| 黄陵县| 灌阳县| 昌邑市| 北安市| 沈阳市| 皮山县| 宁南县| 开平市| 青田县| 敦煌市| 新昌县| 汉中市| 阿合奇县| 桑植县| 康定县| 敖汉旗| 讷河市| 乡城县| 盐池县| 贵南县| 彰化市| 安塞县| 西昌市| 常德市| 无棣县| 柳林县|