requests post/get请求params参数和post请求正文的数据类型记录
1. 前言
在写接口数据驱动测试框架时,(从excel表中读取的非数据的值都是str类型),发送post/get请求因为数据类型原因,请求失败,走了一些弯路,记录总结一下请求的参数或者请求正文的数据类型
2. 将str类型转成非str类型的方法
- 函数:eval()
格式:eval(expression[, globals[, locals]])
expression : 表达式。
globals : 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。
locals : 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。
print(eval('66+72')) # 把字符串解析成66+72的结果
print( eval("{'name':'linux','age':18}") ) # 把字符串转为字典
print( eval("[[1,2], [3,4], [5,6], [7,8], [9,0]]") ) # 把字符串转为列表
print(eval("{'name':'linux','age':age}",{"age":18})) # 传递globals参数值为{“age”:18}
age=18
print(eval("{'name':'linux','age':age}",{"age":20},locals())) # 传递locals参数
这种方法是不安全的,不推荐使用
3. post/get url请求参数param,以及post请求 data/json请求体的数据类型要求