flask

1、簡介

Flask是一個使用 Python 編寫的輕量級 Web 應用框架,我們可以使用Python語言快速實現一個網站或Web服務。微架構通常是很小的不依賴於外部庫的框架。這既有優點也有缺點,優點是框架很輕量,更新時依賴少,缺點是你不得不自己做更多的工作,或通過添加插件增加自己的依賴列表。flask默認的模板渲染引擎是janjia2。

2、使用

一個簡單的例子建立客戶端與服務器的通訊,client and server may placed in a computer or different, determined by url and port.

服務器端代碼

from flask import Flask
from flask_json import json_response

app=Flask(__name__)  //實例化一個Flask對象

#response test connection function
@m_app.route('/oc/status')
def connected():
    return json_response(data_={'status': True})

#通過路由綁定一個視圖函數
#程序實例需要知道所有url對應的執行代碼,所以要有從url到python函數的映射關係。處理url到python函數映#射關係的程序一般叫做路由(Router)。
@m_app.route('/imgQ/sts/<string:bayindex>/<string:examNum>/<string:serialNum>')
def IAandAIResult(bayindex, examNum, serialNum):
   
        return json_response(data_={'status': True})
    


app.run() //運行Flask應用,可以指定ip和端口

客戶端代碼

 import requests
 // test connect,loop execution
 def ConnectInThread(self):
       try:
            resp = requests.get(self.m_BaseUrl + "oc/status", proxies=self.proxies, verify=False)
            if resp.status_code != 200:
                pass
            for item in resp.json():
                if str(resp.json()[item]) == 'True':
                    connected = True
        except Exception:
            self.Pause(1)

 def QualityImgfunc(self):
        if self.m_bConnected:
            print self.m_BaseUrl + 'imgQ/sts/%s/%s/%s'%(self.bayindex,self.examNum,self.serialNum)
            resp = requests.get(self.m_BaseUrl + 'imgQ/sts/%s/%s/%s'%(self.bayindex,self.examNum,self.serialNum), proxies=self.proxies, verify=False) //trigger client routing
            if resp.status_code != 200:
                print resp.status_code
            for item in resp.json():
                print item, resp.json()[item]
                if str(resp.json()[item]) == 'True':
                    self.ActionDone(['imgQ', True, self.repeatNum])
                elif str(resp.json()[item]) == 'False':
                    self.ActionDone(['imgQ', False, self.repeatNum])
        else:
            self.ActionDone(['imgQ', False])
        

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章