Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json jmeter无效的UTF-8中间字节_Json_Utf 8_Jmeter - Fatal编程技术网

Json jmeter无效的UTF-8中间字节

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] 请求根本不会

我使用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]
请求根本不会发送到服务器。 其他请求(例如,用其他有效类别(如“熟食店”)替换类别中的值)可以很好地工作

我想这是一个与“咖啡馆”相关的编码问题,但我不知道如何解决它。 有什么想法吗?
谢谢

您可能需要一个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中,上述解决方案都不适用于我

我试过什么

  • 设置jmeter属性文件:sampleresult.default.encoding=UTF-8(不起作用)
  • 设置标题内容类型=application/json;UTF-8(不起作用)
  • 已尝试预处理器采样器.getArguments().getArguments(0).setValue(新字符串(utf8Bytes))(不起作用)
  • 幸运的是,我注意到一个字段“内容编码”(正如Ofir Kolar所提到的),它似乎终于起作用了

  • 谢谢!我试过了,但没有解决问题。。。下面是标题的外观:请求标题:连接:保持活动接受:应用程序/json内容类型:应用程序/json;charset=utf-8内容长度:115主机:54.84.42.7:14080代理连接:保持活动用户代理:Apache HttpClient/4.2.6(java 1.5)我找到了解决方案-在HTTP请求本身中,可以设置“内容编码”。我在那里设置了“utf-8”,它解决了这个问题。谢谢你的领导@对于Irkolar Ahi,您应该发布您自己问题的答案,可能重复