我收到来自我的RestAssure呼叫的响应,作为ContentType text/plain;charset=UTF-8
。 我搜索了互联网,但找不到一种很好的方法来从消息中获取内容,因为使用以下内容不是那么好;
String content = response.then().extract().body().htmlPath().get().children().get(0).toString();
我怎样才能更漂亮地提取此响应的内容?
您可以直接使用 .asString(( 获取响应的正文内容,而不考虑此返回内容类型。
你可以尝试这样的事情:
response.then().extract().body().asString();
或直接:
response.asString();
ResponseAsString=given((.get("http://services.groupkt.com/state/get/IND/UP"(.asString((; System.out.println("My ResponseAsString is:"+ResponseAsString(;
您也可以使用 JsonPath 提取响应,即使它是 ContentType.TEXT
Response response=given().contentType(ContentType.TEXT).get("http://localhost:3000/posts");
//we need to convert response as a String and give array index
JsonPath jsonPath = new JsonPath(response.asString());
String title = jsonPath.getString("title[2]");
String author=jsonPath.getString("author[2]");
这就是它对我的工作方式
import io.restassured.response.Response;
response.getBody().prettyPrint();