我需要添加一个自定义内容类型的文件上传了一个多部分的请求。为此,我将vendor content type application/vnd.anything.process+json;ver=1
作为一个 MIME type
对于此文件。不幸的是,jmeter IllegalArgumentException
,因为它能识别 ;
作为内容类型规范中的无效字符。
如果不支持,那么如何发送包含 ;
? 我尝试使用postman并记录来自jmeter的传出http调用,但是失败了,出现了相同的异常。
java.lang.IllegalArgumentException: MIME type may not contain reserved characters
at org.apache.http.util.Args.check(Args.java:36)
at org.apache.http.entity.ContentType.create(ContentType.java:229)
at org.apache.http.entity.ContentType.create(ContentType.java:241)
at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.setupHttpEntityEnclosingRequestData(HTTPHC4Impl.java:1575)
at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.handleMethod(HTTPHC4Impl.java:886)
at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sample(HTTPHC4Impl.java:641)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:66)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1296)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1285)
at org.apache.jmeter.threads.JMeterThread.doSampling(JMeterThread.java:635)
at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:558)
at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:489)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:256)
at java.base/java.lang.Thread.run(Thread.java:830)
2条答案
按热度按时间mkh04yzy1#
我得到确认,这是jmeter中的一个bughttps://bz.apache.org/bugzilla/show_bug.cgi?id=65024
hgncfbus2#
如果您完全确定内容类型应该和您描述的完全一样,您可以通过将“客户机实现”切换到
Java
该设置位于http请求采样器的“高级”选项卡下:如果您想在一次快照中更改所有http请求采样器的客户机实现,您可以使用http请求缺省配置元素来完成