#java #automation #rest-assured #rest-assured-jsonpath
#java #автоматизация #будьте уверены #будьте уверены -jsonpath
Вопрос:
Мой URL-адрес запроса: http://........./api/vertex?q=id:1
//Rest assured code
Response response = given().header("Authorization", "Bearer " token). contentType(ContentType.JSON).queryParam("q", "id:1").when().get(url);
Это дает мне пустой ответ.
Но когда я пытаюсь с postman, это дает мне правильный результат: ответ Postman прилагается:
[1]: https://i.stack.imgur.com/lO2XU.png
Я также пытался напрямую отправить URL, т.е. url = http://………/api/vertex?q=id:1
Response response = given().header("Authorization", "Bearer " token). contentType(ContentType.JSON).when().get(url);
Все еще получаю НУЛЕВОЙ результат.
Я не могу найти причину, по которой я ошибаюсь. Пожалуйста, предложите.
Ответ №1:
Похоже, что «:» в вашем параметре запроса вызывает это. RestAssured по умолчанию будет его кодировать. Попробуйте отключить кодировку Url.
Response response = given()
.header("Authorization", "Bearer " token)
.contentType(ContentType.JSON)
.urlEncodingEnabled(false)
.queryParam("q", "id:1")
.when().get(url);