欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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.当与前端联调时,一般使用火狐浏览器。点击相关操作之后,右击选择查看元素,选择网络,点击相应的下发命令,选择相应。即可查看后台所设置的返回信息。

其实很多时候后台没有那么可怕。