赞
踩
很多功能为了调用的方便,我们都会打包成一个服务,通过请求来调用服务端的函数或者功能代码。
这里主要是给出常用flask框架的一个小例子
有两部分代码:
server 服务端
client 请求端
主要实现 python3用flask实现服务,get和post请求,传输json字符串,以及返回md5随机数等
具体看代码吧,也是模版,一看就知道怎么仿照来写来用了。
主要需要自己设计的地方是不一样的route对应于不同功能的模块,每个模块对应于不同的传入request data的格式,主要还是以json或者byte格式传输。
- import os
- import sys
-
- curPath = os.path.abspath(os.path.dirname(__file__))
- rootPath = os.path.split(curPath)[0]
- sys.path.append(rootPath)
-
- from flask import Flask, request
- import hashlib
- import json
- import time
-
-
- def __make_random_id__():
- src = 'filed_46546546464631361sdfsdfgsdgfsdgdsgfsd' + str(time.time())
- m1 = hashlib.md5()
- m1.update(src.encode())
- return m1.hexdigest()
-
-
- app = Flask(__name__)
-
-
- # 装饰器的作用是将请求http://ip:端口/che的路由映射到函数def get()上去
- @app.route('/che', methods=['GET'])
- def get():
- if request.method == 'GET':
- print('get')
- return "get request success"
-
-
- @app.route('/woniu', methods=['POST'])
- def post():
- if request.method == 'POST':
- print("post")
- response_data = request.json.get('data')
- nums = response_data['nums']
- return_data = json.dumps({
- 'nums': str(nums - 1),
- 'id': __make_random_id__()
- })
- return return_data
-
-
- if __name__ == '__main__':
- app.run(host="0.0.0.0", port=8000, threaded=True)
- import requests
-
- if __name__ == '__main__':
- # get 请求
- url = "http://localhost:8000/che"
- r = requests.get(url)
- print(r.text)
-
- # post 请求
- url = "http://localhost:8000/woniu"
- data = {"nums": 1024}
- r = requests.post(url, json={"data": data})
- print(r.text)
执行服务器代码,之后运行起来服务再执行客户端代码,模拟服务在running,client发请求
server 运行:
client 运行:
- 推荐阅读:
-
- 我的2022届互联网校招分享
-
- 我的2021总结
-
- 浅谈算法岗和开发岗的区别
-
- 互联网校招研发薪资汇总
- 2022届互联网求职现状,金9银10快变成铜9铁10!!
-
- 公众号:AI蜗牛车
-
- 保持谦逊、保持自律、保持进步
-
- 发送【蜗牛】获取一份《手把手AI项目》(AI蜗牛车著)
- 发送【1222】获取一份不错的leetcode刷题笔记
-
- 发送【AI四大名著】获取四本经典AI电子书
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。