webmagic模拟登陆获取cookie_[分享]使用ApiPost测试接口时需要先登录的接口怎么办(基于Cookie)?...

本文介绍了如何在ApiPost中处理需要登录状态的接口调试问题。通过开启全局cookie或利用环境变量保存登录接口返回的Cookie,实现后续接口请求的登录状态。详细步骤包括请求登录接口、设置环境变量及全局header,以便服务器识别已登录用户的Cookie。
摘要由CSDN通过智能技术生成

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

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

e787b0d63f0610c972cb6032e05389e8.png

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

ApiPost简介:

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

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

ApiPost提供了2种方案:

方案I、开启全局cookie

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

b16368a82c9009415c01097f972362ca.png

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

如下所示:

第一步:请求登陆接口

cf8941e68d04abe7e42bdcaff06ed8d2.png

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

d67547e859bf9e070a8465e273fdb99d.png

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

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

1、先请求登陆接口:

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

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

46811ef9f26ca9073803a7467f076f3e.png

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

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

如图:

3a34346c5b95c6d1db17a1cb4fdece13.png

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

faa27d41503d27124a37545f80e769c2.png

f9066bbf71e2cdc14ba3d2eb9757ddbb.png

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

原理:

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值