如何使用IntelliJ对URL的查询参数使用+和(或)

时间:2019-10-09 10:12:49

标签: java rest-assured

我有一个用例,需要从服务器获取响应,网址如下所示

https://urlname/path?query=test.project+IN+(integer value)+AND+test.folder+IN+(integer value).

此url返回json作为响应主体n,它与邮递员和浏览器一起使用。 但是当我使用下面的io.restassured.response.Response类方法从IntelliJ中获得此代码时,我得到的状态码为500

Response res = given()
                  .auth()
                  .contentType(“json”)
                  .queryParam(query,param)
                  .get(url);

2 个答案:

答案 0 :(得分:0)

尝试此代码。这将访问网址https://urlname/path?query=test.project+IN+(1234)+AND+test.folderId+IN+(5433)

String query = "query";
        String params = "test.project+IN+(1234)+AND+test.folderId+IN+(5433)";
        Response res = given().contentType(ContentType.JSON).auth().basic("", "").queryParam(query, params)
                .urlEncodingEnabled(false).get("https://urlname/path");

答案 1 :(得分:0)

找到了解决方案,或者我发现了实际的问题,即我正在Jira API上编写上述代码,并且我将用户名和密码存储在auth()。basic(“”)内部使用的字符串变量中, ””)。 由于密码是加密的,因此不允许RestAssured类发布或访问API。 因此,我使用了HTTP客户端的Base64密码编码并进行了后期调用。