Jmeter 接口调试报错 java.net.URISyntaxException: Illegal character in path at index 63

1、在Jmeter使用过程中调试一个接口发现始终报错。

报错如下:java.net.URISyntaxException: Illegal character in path at index 63:
Jmeter 接口调试报错 java.net.URISyntaxException: Illegal character in path at index 63_第1张图片

2、错误问题定位分析

①、对比分析

把要调试的接口和平常经常调试的接口进行了对比,发现不同点在于,报错的接口URL路径中包含{2}比如 /get/{2},这种一般是路径参数,记得在使用postman的时候貌似直接请求就没问题,但是在Jmeter中请求死活不行,看一下报错信息:URISyntaxException url语法异常,那就确定了就是url导致的。

②、尝试解决

搜了一下发现大多数是说编码问题,分别尝试了在取样器中添加编码格式UTF-8,但应该不是这里的问题
在这里插入图片描述
后来看到有说把{}转换成编码后的格式比如:{ 转换为%7B }转换为%7D 就这样直接写进了URL中:如/get/%7B2%7D,还是没有成功

③、换种方式

直接把{2}换成了变量的模式 比如get/${number},然后在添加了用户自定义变量,设置number=2,尝试请求了一下可以了。
!!!说明了什么!!只需要将url中的{},去掉就行了。

④、结果

去掉url中的{},就可以正常请求成功。
而get/{数量} 只是开发人员提供的一个模式,然后就以为{数量}只需要把“数量”换位实际请求的数字,自以为的自以为都是无知的体现。

你可能感兴趣的:(Jmeter使用相关,压力测试,jmeter,接口测试)