如何将值从RestAssured发布到JSon并从中获取值?

时间:2015-11-12 13:14:14

标签: json rest rest-assured

{"service_request":  {"service_type":"Registration","partner":"1010101","validity":1,"validity_unit":"Year","quantity":1,"center":"1020301","template":"2020301"}}

当我从网页发布数据时,我从请求有效负载中获得了上面的JSON值。我想在java中发布RESTAssured中的这些数据,并希望得到返回值?我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

我建议您查看https://github.com/jayway/rest-assured/wiki/Usage#specifying-request-data

我想你正在尝试使用Rest-Assured进行POST。最简单易行的方法是将你的有效负载保存为String。如果您将有效负载作为JSONObject,请使用toJSONString()将其转换为String

String payload = "yourpayload";
String responseBody = given().contentType(ContentType.JSON).body(payload).
when().post(url).then().assertThat().statusCode(200).and()
extract().response().asString();

上面的代码,将您的有效负载发布到给定的Url,验证响应代码并将响应正文转换为String。您可以在不转换为String的情况下执行断言,例如

given().contentType(ContentType.JSON).body(payload).
when().post(url).then().assertThat().statusCode(200).
and().assertThat().body("service_request.partner", equalTo("1010101"));