国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Python > 正文

python+flask實(shí)現(xiàn)API的方法

2020-02-15 23:46:02
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

本文為大家分享了python+flask實(shí)現(xiàn)API的具體方法,供大家參考,具體內(nèi)容如下

Flask 框架

#-*-coding:utf-8-*- #pip install flask#pip install flask-restful from flask import Flask app = Flask(__name__) @app.route('/')def index():  return "hello world!" if __name__ == '__main__':  app.run(debug=True)

pycharm運(yùn)行該程序后,在瀏覽器輸入http://127.0.0.1:5000/,即可看到一個(gè)網(wǎng)頁(yè):

Flask + flask_restful創(chuàng)建一個(gè)簡(jiǎn)單的應(yīng)用程序:

from flask import Flaskfrom flask_restful import Resource,Api app = Flask(__name__)api = Api(app)class HelloWorld(Resource):  def get(self):    return {"hello":"world"} api.add_resource(HelloWorld,'/') if __name__ == '__main__':  app.run(debug=True)

python+flask創(chuàng)建API: 獲取post請(qǐng)求傳遞的json數(shù)據(jù)

from flask import Flask,abort,jsonify,make_response,request app = Flask(__name__) @app.route('/analyze/' ,methods=['POST'])def call_wiscan_analyze():  if not request.json or not 'path' in request.json:     abort(400)  path = request.json['path']  if __name__ == '__main__':  app.run(port='50055',debug=True)

請(qǐng)求:

from requests import post if __name__ == '__main__':  path='"F:/nb_org_data/86574FG01/2013/1029/0008/86574FG01201310290008.img"'  ret = post('http://localhost:50055/analyze/',json={'path':path})  print(ret.text)

將API封裝為win32服務(wù)

import win32serviceutilimport win32serviceimport win32eventimport win32timezonefrom flask import Flask,abort,jsonify,make_response,requestimport threading app = Flask(__name__)_ONE_DAY_IN_SECONDS = 60 * 60 * 24 @app.route('/analyze/' ,methods=['POST'])def call_wiscan_analyze():  if not request.json or not 'path' in request.json:     abort(400)  path = request.json['path'] def thread_target():  app.run(port='50055', debug=True) class GRPCWin32Client(win32serviceutil.ServiceFramework):  _svc_name_ = 'GRPCWin32Client'  _svc_display_name_ = 'Nuctech GRPC Client'  _svc_description_ = 'wiscan grpc client'   def __init__(self, args):    win32serviceutil.ServiceFramework.__init__(self, args)    self.hWaitStop = win32event.CreateEvent(None, 0, 0, None)    #self.logger = self._getLogger()    self.run = True   def SvcDoRun(self):    th = threading.Thread(target=thread_target)    th.start()    try:      while self.run:        time.sleep(_ONE_DAY_IN_SECONDS)     except KeyboardInterrupt:      pass     pass   def SvcStop(self):    self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING)    win32event.SetEvent(self.hWaitStop)    self.run = False if __name__ == '__main__':  import sys  import servicemanager  if len(sys.argv) == 1:    try:      evtsrc_dll = os.path.abspath(servicemanager.__file__)      servicemanager.PrepareToHostSingle(GRPCWin32Client)      servicemanager.Initialize('GRPCWin32Client', evtsrc_dll)      servicemanager.StartServiceCtrlDispatcher()    except win32service.error as details:      import winerror      if details == winerror.ERROR_FAILED_SERVICE_CONTROLLER_CONNECT:        win32serviceutil.usage()  else:    win32serviceutil.HandleCommandLine(GRPCWin32Client)             
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 资中县| 蒙自县| 视频| 牡丹江市| 凭祥市| 桃园县| 弥渡县| 潞城市| 青河县| 海原县| 化德县| 珠海市| 旌德县| 栾川县| 嵩明县| 台北县| 长武县| 贵德县| 筠连县| 伊川县| 镇原县| 石景山区| 长子县| 河池市| 遵化市| 甘肃省| 禹城市| 抚州市| 武威市| 丹阳市| 郴州市| 新疆| 平乐县| 黄浦区| 滦平县| 化德县| 滨海县| 博野县| 蒙自县| 巴中市| 枝江市|