Python 前后端联动
程序员文章站
2024-03-20 14:46:22
...
1.未与前端联调时,需要自己提交post或get请求,一般使用Python的requests库。
post请求(前端传入一个文件):
import requests
url=''
files = {'files':open('文件路径','wb+')}
r = requests.post(url,files=files)
get请求:
当后台需要前端传入json数据时,可以先将中间层的requests.post改成get。
def post(self):#此处的post改成get
data = request.get_data()
data = '{"case_id":[5,6],"version_name":"Public_3611"}'
#要获取前端传入的json数据,在此传入
data_dict = json.loads(data)#转换成一个字典
case_ids = data_dict['case_id']#获取字典的value值
2.统一返回的格式
ret,data,msg 状态码,数据,错误信息
这些返回值可以由中间层直接定义,也可返回调用底层函数后底层函数的返回值。
ret, msg, file_name = CaseEx.write_xls(case_ids, version_name)
if ret:
ret_dict = {'file_name': '%s'%file_name, 'msg':u'用例导出成功', 'status': True}
else:
ret_dict = {'file_name': '%s'%file_name,'msg':msg, 'status': False}
return ret_dict
这是截取代码的一部分进行解释说明,其中file_name是从后端的底层代码中获取的文件路径。要注意一一对应,三个值必须对应三个值。
当msg存在多个信息时,可以用下面字典的方式:
msg = u'''
有%s条用例新增
'有%s条用例名称被修改
有%s条用例内容被修改
''' % (case_add_num, modify_name_num, modify_text_num)
return True, msg, file_name
3.当与前端联调时,一般使用火狐浏览器。点击相关操作之后,右击选择查看元素,选择网络,点击相应的下发命令,选择相应。即可查看后台所设置的返回信息。
其实很多时候后台没有那么可怕。