python3 封装接口
来源:互联网 发布:非农数据走势图片 编辑:程序博客网 时间:2024/06/08 16:10
封装接口主要讲静态接口(无参数传入)、动态接口(有参数传入,不同参数返回的信息不同)。针对动态接口有三种传参方式:key_value、json串和拼接方式入参
- 一、封装成无参数传入的接口
from flask import Flask,jsonify,requestdata = {'huhy':{'age':24,'sex':'女'}, 'liuer':{'age':12,'sex':'男'} }app = Flask(__name__)#创建一个服务,赋值给APP@app.route('/get_user',methods=['post'])#指定接口访问的路径,支持什么请求方式get,post#讲的是封装成一种静态的接口,无任何参数传入def get_user():#-----这里的函数名称可以任意取 return jsonify(data)#把字典转成json串返回app.run(host='0.0.0.0',port=8802,debug=True)#这个host:windows就一个网卡,可以不写,而liux有多个网卡,写成0:0:0可以接受任意网卡信息#通过访问127.0.0.1:8802/get_user,可返回data信息
接口返回的截图如下: - 二、有参数传入的接口
1.通过key_value方式传参from flask import Flask,jsonify,requestdata = {'huhy':{'age':24,'sex':'女'}, 'liuer':{'age':12,'sex':'男'} }err = {'zz':404, 'yy':502 }app = Flask(__name__)#创建一个服务,赋值给APP@app.route('/get_user',methods=['post'])#指定接口访问的路径,支持什么请求方式get,post# key_values方式传参def get_user(): username = request.form.get('username')#获取接口请求中form-data的username参数传入的值 if username in data:#判断请求传入的参数是否在字典里 return jsonify(data[username])#如果在的话,则返回data对应key的值转成的json串信息 else: return jsonify(err[username])#如果不在的话,返回err对应key的value转成的json串信息app.run(host='0.0.0.0',port=8802,debug=True)#这个host:windows就一个网卡,可以不写,而liux有多个网卡,写成0:0:0可以接受任意网卡信息#通过访问127.0.0.1:8802/get_user,form—data里输入username参数,则可看到返回信息
接口返回的截图如下:
2.通过json串方式传参from flask import Flask,jsonify,requestdata = {'huhy':{'age':24,'sex':'女'}, 'liuer':{'age':12,'sex':'男'} }err = {'zz':404, 'yy':502 }app = Flask(__name__)#创建一个服务,赋值给APP@app.route('/get_user',methods=['post'])#指定接口访问的路径,支持什么请求方式get,post#json方式传参def get_ss(): username = request.json.get('username1')#获取带json串请求的username参数传入的值 if username in data: # 判断请求传入的参数是否在字典里 return jsonify(data[username])#如果在的话,则返回data对应key的值转成的json串信息 else: return jsonify(err[username])#如果不在的话,返回err对应key的value转成的json串信息app.run(host='0.0.0.0',port=8802,debug=True)#这个host:windows就一个网卡,可以不写,而liux有多个网卡,写成0:0:0可以接受任意网卡信息#通过访问127.0.0.1:8802/get_user,form—data里输入username参数,则可看到返回信息
接口返回的截图如下:
3.请求链接直接拼接入参方式from flask import Flask,jsonify,requestdata = {'huhy':{'age':24,'sex':'女'}, 'liuer':{'age':12,'sex':'男'} }err = {'zz':404, 'yy':502 }app = Flask(__name__)#创建一个服务,赋值给APP@app.route('/get_user',methods=['post'])#指定接口访问的路径,支持什么请求方式get,post#请求后直接拼接入参方式def get_ss(): username = request.args.get('username')#使用request.args.get方式获取拼接的入参数据 if username in data: # 判断请求传入的参数是否在字典里 return jsonify(data[username])#如果在的话,则返回data对应key的值转成的json串信息 else: return jsonify(err[username])#如果不在的话,返回err对应key的value转成的json串信息app.run(host='0.0.0.0',port=8802,debug=True)#这个host:windows就一个网卡,可以不写,而liux有多个网卡,写成0:0:0可以接受任意网卡信息#通过访问127.0.0.1:8802/get_user,form—data里输入username参数,则可看到返回信息
接口返回的截图,如下: - 未完待续
0 0
- python3 封装接口
- python3 web接口 字典里边嵌字典和数组字典的封装
- Python3 之封装
- 接口封装
- python3 请求RESTful接口
- python3 数据操作简单封装
- app接口 封装通信接口
- 使用接口封装变化
- 接口 DLL 封装 方法
- 封装四:面向接口
- 封装,继承,多态,接口
- 封装,继承,多态,接口
- linux inotify 接口封装
- 接口封装及调用
- C++封装MySql接口
- AnimatePacker3.0接口封装
- 21 串行接口封装
- MySQL C++接口封装
- Linux命令之 wget
- 五种开源协议BSD,GPL,LGPL,MIT比较
- Socket实现Android客户端与服务器的通信
- mac下卸载node.js
- error C2143: 语法错误 : 缺少“;”(在“<class-head>”的前面)
- python3 封装接口
- UVa 540 Team Queue
- Struts实现分页显示数据
- 20161201
- AOP实现原理
- (模板题)poj 2352 Stars(树状数组)
- 浅谈static关键字
- ural 1243
- 蓝桥杯 历届试题 城市建设