get参数中的数组Rest Assured

时间:2015-10-28 11:47:21

标签: java rest-assured

我需要使用Rest Assured发送以下GET请求:

http://some.url.com/path?filter[key1]=value1&filter[key2]=value2

我尝试使用 queryParams formParams 进行此操作,但它将params构造为filter={"key":"value"}

在JQuery中,我可以这样做:

$.param({filter:{key1:"value1"}})

2 个答案:

答案 0 :(得分:2)

根据Rest-Assured使用指南

  

也可以直接在url上设置参数:

     

..()时获得( “/名称的firstName =约翰&安培; lastName的= Doe的”);

如果您没有从intString方法获得所需的结果,是否可以使用带有所需值的格式queryParam

答案 1 :(得分:0)

我使用以下方式做了类似的事情

String path = "path?";
            List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
            nameValuePairs.add(new BasicNameValuePair("q", search));
            nameValuePairs.add(new BasicNameValuePair("lang", lang));
            nameValuePairs.add(new BasicNameValuePair("sort", sort));
            path = path + URLEncodedUtils.format(nameValuePairs, "utf-8");
            System.out.println("REQUEST URL " + path);
            response = given().auth().preemptive().basic(user, pass).when().get(path);