【分享】使用ApiPost测试接口时须要先登陆的接口怎么办(基于Cookie)?

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

好比:获取登录用户的收藏列表,此时,咱们就须要模拟登录状态进行接口调试了。如图:前端

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

今天,咱们讲解利用ApiPost的环境变量,解决这种须要先登陆再请求的接口依赖状况。后端

ApiPost简介:

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

下载地址:https://www.apipost.cn/download.html服务器

ApiPost提供了2种方案:cookie

方案I、开启全局cookie

apipost提供了开启全局cookie的功能。开启路径以下:工具

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

开启后,咱们请求登录接口后,后续接口都会共享“已登录”的状态,即共享了登录接口返回的cookie。post

以下所示:测试

第一步:请求登录接口spa

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

第二步:访问其余接口,则都处于了登录状态

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

[](https://www.apipost.cn/#downl...

方案II、利用环境变量,先请求登录接口,再请求后续接口

这种方案是针对关闭了全局cookie功能的状况。

一、先请求登录接口:

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

将登录接口返回的PHPSESSID(这个是SessionID,PHPSESSID是针对PHP做为后端接口的SessionID变量名,其余语言的变量名可能不一样)设为环境变量。

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

二、接着返回收藏接口,进到header选项,参数值选择cookie,参数值输入: PHPSESSID={{login_var}}。

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

如图:

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

或者你也能够定义个全局header,这样就不用每一个接口都设置一遍了:

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

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

三、接下来send,就能够看到个人收藏列表了。

原理:

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

相关推荐:ApiPost的变量的定义和使用

相关文章
相关标签/搜索