Json jmeter无效的UTF-8中间字节
我使用jMeter通过post请求向测试服务器发送json 以下请求始终失败:Json jmeter无效的UTF-8中间字节,json,utf-8,jmeter,Json,Utf 8,Jmeter,我使用jMeter通过post请求向测试服务器发送json 以下请求始终失败: { “地点”:{ “纬度”:“37.390737”, “经度”:“-121.973864” }, “类别”:“咖啡馆和面包店” } 响应数据中的错误消息为: Invalid UTF-8 middle byte 0x20 at [Source: org.apache.catalina.connector.CoyoteInputStream@6073ddf0; line: 6, column: 20] 请求根本不会
{
“地点”:{
“纬度”:“37.390737”,
“经度”:“-121.973864”
},
“类别”:“咖啡馆和面包店”
}
响应数据中的错误消息为:
Invalid UTF-8 middle byte 0x20
at [Source: org.apache.catalina.connector.CoyoteInputStream@6073ddf0; line: 6, column: 20]
请求根本不会发送到服务器。
其他请求(例如,用其他有效类别(如“熟食店”)替换类别中的值)可以很好地工作
我想这是一个与“咖啡馆”相关的编码问题,但我不知道如何解决它。
有什么想法吗?
谢谢 您可能需要一个HTTP头来发布JSON:
Content-Type: application/json; charset=utf-8
如果没有这个,字符串很可能不是UTF-8编码的。JSON应该是UTF-8格式,因此ee
的十六进制字节应该是0xc3 0xa9
如果没有该头,字节序列可能是0xe9
,它采用ISO-8859-1编码。这可以解释错误,因为UTF-8序列开始于0xe\uuu
,因此它看到0xe9 0x20
(其中0x20
是e
后面的空格),并抱怨“中间字节无效”
来源:在HTTP请求本身中,可以设置“内容编码”。我在那里设置了“utf-8”,它解决了问题在jmeter 5.2.1中,上述解决方案都不适用于我 我试过什么
谢谢!我试过了,但没有解决问题。。。下面是标题的外观:请求标题:连接:保持活动接受:应用程序/json内容类型:应用程序/json;charset=utf-8内容长度:115主机:54.84.42.7:14080代理连接:保持活动用户代理:Apache HttpClient/4.2.6(java 1.5)我找到了解决方案-在HTTP请求本身中,可以设置“内容编码”。我在那里设置了“utf-8”,它解决了这个问题。谢谢你的领导@对于Irkolar Ahi,您应该发布您自己问题的答案,可能重复