转载请注明出处️

作者:测试蔡坨坨

原文链接:caituotuo.top/5d14f0d7.html


你好,我是测试蔡坨坨。

我们在做接口自动化测试的时候,一般会通过调用登录接口来获取cookies。

有时候,requests 返回的 cookies 会为空,原因是因为链接发生了 301/302 重定向跳转,而 cookies 是跟着第一个响应返回的,第二个响应没有返回 Set-Cookie header。所以直接读取 r.cookies 就是空的,但是在 session.cookies 中是有数据的。

这里提供两种解决方案。

方法1 关闭重定向

在请求参数中加入"allow_redirects": False关闭重定向。

    def login(self):
req = {
"url": self.url + "/passport/login",
"method": "post",
"data": {
"username": self.username,
"password": self.password
},
"allow_redirects": False # 关闭重定向
}
res = requests.request(**req)
cookie_jar = res.cookies
print(cookie_jar)
cookie = requests.utils.dict_from_cookiejar(cookie_jar)
print(cookie)

方法2 直接读 s.cookies

    def login(self):
url = self.url + "/passport/login"
data = {
"username": self.username,
"password": self.password
}
s = requests.Session()
s.post(url=url, data=data)
cookie_jar = s.cookies
print(cookie_jar)
cookies = requests.utils.dict_from_cookiejar(cookie_jar)
s.cookies.clear()
print(cookies)

最新文章

  1. AngularJS API之bootstrap启动
  2. HDU2205 又见回文(区间DP)
  3. 重新想象 Windows 8.1 Store Apps (80) - 控件增强: WebView 之基本应用, POST 数据, 与 JavaScript 交互
  4. ulimit 命令详解
  5. MResource
  6. jsp验证表单后再提交
  7. Windsock套接字I/O模型学习 --- 第三章
  8. Tomcat中的c3p0数据库连接池的释放
  9. Android 5.0 调色 Palette调色功能
  10. python文本读写数据
  11. Hadoop HDFS 用java API 进行读写
  12. LeetCode算法题-Number of Segments in a String(Java实现)
  13. 学习笔记之tmux
  14. 自定义适用于手机和平板电脑的 Dynamics 365(五):可视控件
  15. ubuntu下查询SSH状态和安装SSH服务
  16. Yii常用变量
  17. Storm框架:如何消费RabbitMq消息(代码案例)
  18. Linq简单使用
  19. Android的Master/Detail风格界面中实现自定义ListView的单选
  20. 类库服务寄宿到WebHost

热门文章

  1. LeetCode题目答案及理解汇总(持续更新)
  2. 齐博x2新用户手工注册接口
  3. NLP之Bi-LSTM(在长句中预测下一个单词)
  4. 【原创】在RT1050 LittleVgl GUI中嵌入中文输入法框架
  5. The Google File System 翻译和理解
  6. 搜索"xxxx"的进程,同时杀进程
  7. 微信小程序canvas 证件照制作
  8. java学习之SpringMVC拦截器开发
  9. 嵌入式-C语言基础:实现字符串拷贝函数
  10. hyperworks2021位安装教程