8-2 开发接口 (入参是json格式)
1、开发入参事json格式的接口
import json import tools import flask from .check_session import check_session server = flask.Flask(__name__) @server.route('/api/add_stu',methods=['post']) def add_stu(): """ 添加学生信息接口 :return: 返回添加的学生信息 """ if flask.request.is_json: # 首先需要判断入参是否是json格式的 # 从外界获取到输入的值,必填参数 session_id = flask.request.json.get('session_id') name= flask.request.json.get('name') phone = flask.request.json.get('phone') grade = flask.request.json.get('grade') # 从外界获取到输入的值,非必填,用户请求不传时设置默认值 addr = flask.request.json.get('addr','北京') sex = flask.request.json.get('sex','男') age = flask.request.json.get('age',18) gold = flask.request.json.get('gold',1000) # 判断session_id name phone grade是否为空 if session_id and name and phone and grade: # 都必填的操作 # 定义两个变量来接收 判断session_id是否有效函数中返回的值 login_tag , data = check_session(session_id) if login_tag: # session_id 有效 # 插入sql insert_sql="insert into `jxz`.`app_student` ( `name`, `sex`," \ " `age`, `addr`, `grade`, `phone`, `gold`)" \ " values ( '%s', '%s', '%s', '%s', '%s', '%s', '%s');"%(name,sex,age,addr,grade,phone,gold) tools.my_db(insert_sql) # 调用tools下的my_db函数,执行sql res = {'code':0,'msg':'学生信息添加成功'} # 接口返回的类型都是json类型的 else: # session_过期了,返回session_id res = data else: # 必填参数没有填时给出提示信息:必填参数未填 res = {'code':3,'msg':'必填参数未填,请查看接口文档!'} else: # 判断入参不是json格式的,提示入参是json格式 res = {'code':5,'msg':'入参是json类型的!'} return json.dumps(res, ensure_ascii=False) # 将返回的结果转换成json