使用ApiPost测试接口时需要先登录的接口怎么办(基于Cookie)?

在后台在开发、调试接口时,常常会遇到需要登陆才能请求的接口。

比如:获取登陆用户的收藏列表,此时,我们就需要模拟登陆状态进行接口调试了。如图:

使用ApiPost测试接口时需要先登录的接口怎么办(基于Cookie)?

今天,我们讲解利用ApiPost的环境变量,解决这种需要先登录再请求的接口依赖情况。

ApiPost简介:

ApiPost是一个支持团队协作,并可直接生成文档的API调试、管理工具。它支持模拟POST、GET、PUT等常见请求,是后台接口开发者或前端、接口测试人员不可多得的工具 。

下载地址:https://www.apipost.cn/#download

利用环境变量,先请求登陆接口,再请求后续接口

1、先请求登陆接口:

为了处于登陆态,需要先请求登陆接口,此举目的是为了模拟用户的登陆行为,获取需要的登陆参数(这里是Cookie)。

使用ApiPost测试接口时需要先登录的接口怎么办(基于Cookie)?

将登陆接口返回的PHPSESSID(这个是SessionID,PHPSESSID是针对PHP作为后端接口的SessionID变量名,其他语言的变量名可能不同)设为环境变量。

使用ApiPost测试接口时需要先登录的接口怎么办(基于Cookie)?

使用ApiPost测试接口时需要先登录的接口怎么办(基于Cookie)?

2、接着返回收藏接口,点击【发送】按钮旁边的三角,选择【带Cookie】,输入 PHPSESSID={{login_var}}。

此举是为了利用登陆接口返回的Cookie伪造请求的PHPSESSID

如图:

使用ApiPost测试接口时需要先登录的接口怎么办(基于Cookie)?

3、接下来send,就可以看到我的收藏列表了。

使用ApiPost测试接口时需要先登录的接口怎么办(基于Cookie)?

原理:

利用ApiPost发送Cookie,使服务器识别已登录用户的Cookie。

本文档最后更新于:2019-03-24
如未解决您的问题,请在此 提交工单