接口测试cookie,session,token

本文介绍了接口鉴权的不同方式,重点讲解了Cookie的工作原理及其分类。包括服务器如何生成并发送Cookie给客户端,以及客户端如何在后续请求中自动携带Cookie进行身份验证。

1、接口鉴权:

cookie,session,token,auth,basic,sign(签名鉴权)

2、什么是cookie?

cookie是服务器产生的保存在客服端的一小段的文本信息,格式是字典,键值对。

3、cookie分类

session级:保存在内存,当浏览器关闭时自动清除

持久级:保存在硬盘,只有当失效时间到了才会失效

4、查看方法  f12

5、cookie鉴权工作原理

当客户端第一次访问服务器的时候,那么服务器就会生成cookie信息,然后再第一次响应里面的响应头里面通过Set—cookie把数据传输给客服端。客服端从第2-N次当访问同一个服务器IP的时候,那么就会自动的再请求头的cookie里面带上这些cookie,验证这个原理

 

### 解决接口测试中每次请求Cookie变化的方法 为了在接口测试期间保持会话或使 Cookie 的值固定变,可以采取几种策略。一种常见的方式是在首次成功认证之后保存返回的 Cookie 并将其用于后续的所有请求中。 当处理 HTTP 请求时,通常可以通过设置 `requests.Session()` 来维持同一个 Session 对象中的连接状态[^1]。这允许程序自动管理 Cookies,在一次成功的身份验证后,任何进一步通过同一 session 发送的请求都会携带相同的 cookie 数据,从而模拟浏览器的行为并保持用户的登录状态。 对于那些确实需要手动控制的情况,则可以在获取到初始响应后的 Headers 中提取 Set-Cookie 字段的内容,并将这些信息存储起来以便于下次调用 API 接口的时候重新赋值给新的请求头里的 Cookie 参数。 另外值得注意的是 Token 认证机制也可以达到类似的效果。Token 是由服务器端生成的一串字符作为客户端请求的身份标识符;一旦用户完成初次登陆操作获得 token 后,就可以利用它来进行接下来的数据访问而必每次都提供完整的账户凭证[^4]。过这里讨论的重点是如何让 cookies 在多次请求间保持稳定,因此主要关注点还是放在如何正确配置以及重用已有的 cookies 上面。 ```python import requests # 创建一个session对象 s = requests.Session() # 登录以取得cookies login_url = 'https://example.com/login' payload = {'username': 'your_username', 'password': 'your_password'} response = s.post(login_url, data=payload) if response.status_code == 200: # 使用已经包含了有效cookieSession去发起其他请求 other_request_url = "https://example.com/other_endpoint" result = s.get(other_request_url) print(result.text) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

美丽的说说

感谢你的支持与鼓励,每一份打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值