ApiFox入参不识别加号问题处理

1. 问题描述

使用ApiFox进行API测试时 , 加号发送至服务器时被错误解析为空格 ,如下图

1.1 请求参数

在这里插入图片描述

1.2 debug参数

debug 到入参这里 , 肉眼可见 , 入参的加号被转为空格了
在这里插入图片描述

2.问题原因

在使用ApiFox进行API测试时,如果遇到特定的请求参数(如包含加号+等特殊字符)在发送至服务器时被错误解析或过滤的问题,通常这不是ApiFox特意进行的过滤,而是URL编码的默认行为。加号在URL中会被视为一个空格,因此在发送请求前,它们会被自动编码为%20。

ApiFox的设置中并没有直接的选项来禁用URL参数的自动编码。这是因为URL编码是HTTP协议的一部分,而非ApiFox特有的功能。

2.3 问题解决方案

2.3.1 手动将 入参的 加号 改为 %2B

例如
Swq3FIxDYpv80MY74j4DQ4G6gCM22haO+Vavu+msys4=
改为
Swq3FIxDYpv80MY74j4DQ4G6gCM22haO%2BVavu%2Bmsys4=

2.3.2 在ApiFox种编写请求参数前置操作脚本

在这里插入图片描述
脚本如下

// 获取所有的查询参数
const params = pm.request.url.query.all();

// 遍历所有查询参数
params.forEach(param => {
    // 检查参数值是否包含 +
    if (param.value.includes('+')) {
        // 替换 + 为 %2B
        param.value = param.value.replace(/\+/g, '%2B');
    }
});

// 更新URL以反映更改
pm.request.url.query = params;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值