Java 如何发送一个密钥的数组值以满足rest-assured请求
下面是预期的请求,它应该命中系统,但在发送时数组变成字符串 期望Java 如何发送一个密钥的数组值以满足rest-assured请求,java,arrays,json,rest-assured,rest-assured-jsonpath,Java,Arrays,Json,Rest Assured,Rest Assured Jsonpath,下面是预期的请求,它应该命中系统,但在发送时数组变成字符串 期望 {“类”:“A”,“子用例”:[“string1”,“String2”]} 为了生成上面的内容,我正在创建数组对象并发送请求,但在rest-assured请求中结果是这样的 实际的 {"Class": "A", "subClass": "[\"String1\",\"String2\"]"} 由于上述实际结果,
{“类”:“A”,“子用例”:[“string1”,“String2”]}
为了生成上面的内容,我正在创建数组对象并发送请求,但在rest-assured请求中结果是这样的
实际的
{"Class": "A", "subClass": "[\"String1\",\"String2\"]"}
由于上述实际结果,api将其视为子类的字符串,而不是将其视为数组。但代码希望它是子类的数组
我正在使用hasmap创建上述内容。像这样
@Test
public void mm(){
HashMap<String,String> queryParam = new HashMap<>();
queryParam.put("CLASS","A");
queryParam.put("subClass", arrayMethod("String1","String2"));
}
public String arrayMethod(String s1, String s2){
org.json.simple.JSONArray array = new JSONArray();
array.add(s1);
array.add(s2);
return array.toJSONString();
}
@测试
公共空间(mm){
HashMap queryParam=新HashMap();
queryParam.put(“类别”、“A”);
queryParam.put(“子类”,数组方法(“String1”,“String2”);
}
公共字符串数组方法(字符串s1、字符串s2){
org.json.simple.JSONArray数组=新的JSONArray();
数组.add(s1);
数组。添加(s2);
返回array.toJSONString();
}
queryParam将作为jsonbody运行
现在,如何按预期发送json正文而不是实际的json正文。
提前感谢。将地图更改为:
HashMap<String, Object> queryParam = new HashMap<>();
最好使用一个类作为结果你介意详细说明吗?
queryParam.put("subClass", Arrays.asList("String1", "String2"));