首页 > 其他分享 >接口调试时如何请求一个需要登录才能访问的接口

接口调试时如何请求一个需要登录才能访问的接口

时间:2023-02-13 17:44:38浏览次数:28  
标签:请求 登录 PHPSESSID 接口 Cookie 登陆 cookie 调试

在后台在开发、调试接口时,常常会遇到需要登陆才能请求的接口。 比如:获取登陆用户的收藏列表,此时,我们就需要模拟登陆状态进行接口调试了。如图: 今天,我们讲解利用Apipost的环境变量,解决这种需要先登录再请求的接口依赖情况。 ApiPost提供了2种方案:

方案I、开启全局cookie

apipost提供了开启全局cookie的功能。开启路径如下: 右下角Cookie管理器-打开全局Cookie按钮 开启后,我们请求登陆接口后,后续接口都会共享“已登陆”的状态,即共享了登陆接口返回的cookie。 如下所示:

第一步:请求登陆接口

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

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

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

1、请求登陆接口,将响应COOKIE赋值给变量:

为了处于登陆态,需要先请求登陆接口,此举目的是为了模拟用户的登陆行为,获取需要的登陆参数(这里是Cookie)。 将登陆接口返回的PHPSESSID(这个是SessionID,PHPSESSID是针对PHP作为后端接口的SessionID变量名,其他语言的变量名可能不同)设为环境变量。
apt.variables.set("login_var", response.cookies["PHPSESSID"]);
注:更多响应结果绑定变量可以参考 “响应以及断言”一节和“后执行脚本” 一节。

2、调用变量,手动给header添加Cookie参数

接着返回收藏接口,进到header选项,参数值选择cookie,参数值输入: PHPSESSID={{login_var}}。 此举是为了利用登陆接口返回的Cookie伪造请求的PHPSESSID。 如图: 或者你也可以定义个全局header,这样就不用每个接口都设置一遍了:

登录实现原理

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

标签:请求,登录,PHPSESSID,接口,Cookie,登陆,cookie,调试
From: https://www.cnblogs.com/api-skills/p/17117188.html

相关文章

  • node实现http接口请求(解决跨域)
    varexpress=require('express');varapp=express();varbodyParser=require('body-parser')app.post('/highway',bodyParser.json(),function(req,res){......
  • 第三方登录单点
    第三方的单点登录和公司的单点登录集成时,需要从第三方登录公司的单点系统,以下为功能单点登录系统提供的后台restfulAPI,返回json格式的数据接口1.登录验证用户名密码,返......
  • 调试 Node.js
    调试Node.js调试器调试器是一种软件工具,用于通过分析方法观察和控制程序的执行流设计目标:帮助找出bug的根本原因,并帮助你解决它工作方式:将程序托管在自己的执行进......
  • 790~792 登录功能代码实现,添加功能分析实现
    #登录:1.调整页面,加入验证码功能   UserfindUserByUsernameAndPassword(Stringusername,Stringpassword);==========Userlogin(Useruser);=========......
  • 登录功能_代码实现与添加功能_分析
    登录功能_代码实现<%@pagecontentType="text/html;charset=UTF-8"language="java"%><!DOCTYPEhtml><htmllang="zh-CN"><head><metacharset="utf-8"/>......
  • jmeter做接口测试
    一、工具简介jmeter是一个主流的性能测试工具,主要用于测试服务器接口注:单元测试(开发)>接口测试(避免后期功能测试出现大量bug)>功能测试(黑盒测试)>回归测试>性能测试(上线前,功......
  • 微信小程序权限接口
    微信小程序权限接口​​1、权限接口​​​​1.1用户授权接口`wx.authorize(Objectobject)`​​​​1.2获取用户权限设置接口`wx.getSetting(Objectobject)`​​​​1.3......
  • 微信运动接口(获取自己的微信运动数据)
    @​​toc​​1、微信运动接口wx.getWeRunData()1.1实现步骤  该接口获取用户过去30天微信运动步数。该接口比较复杂,具体操作步骤如下:先调用​​wx.login()​​接口获取c......
  • 75接口采集学习网址信息,顺便清理一个存入csv的坑
    对一个学习网址进行外页爬取#coding=gbk#-*-coding:uft-8-*-#@Time:2023/2/13#@Author:十架bgm#@FileName:ca213importcsvimportrequestsimportrei......
  • 页面调整与登录功能_验证码显示
    页面调整<%@pagecontentType="text/html;charset=UTF-8"language="java"%><%@taglibprefix="c"uri="http://java.sun.com/jsp/jstl/core"%><!DOCTYPEht......