当请求中指定了无效的编码时,我正在尝试测试API返回的错误消息。 我正在发送带有纯文本正文和Content-Type标头“ application / html”的POST请求。我可以从邮递员那里成功地做到这一点。 但是RestAssured提示直接指定编码。
Don't know how to encode {...} as a byte stream.
Please use EncoderConfig (EncoderConfig#encodeContentTypeAs) to specify how to serialize data for this content-type.
For example: "given().config(RestAssured.config().encoderConfig(encoderConfig().encodeContentTypeAs("application/html", ContentType.TEXT))). .."
但是即使我直接这样做,我也会从RestAssured那里得到相同的错误:
RestAssured.given().config(RestAssured.config().encoderConfig(EncoderConfig.encoderConfig().encodeContentTypeAs("application/html", ContentType.HTML)));
这是我使用的标题:
RestAssured.given().header("Content-Type", "application/html")
.header("accept", "application/json");
答案 0 :(得分:0)
您可以设置请求的响应类型,还可以使用以下代码验证响应的内容类型。
given().contentType("application/json; charset=utf-8").when().get("http://localhost:3000/posts/").then().statusCode(200)
.and().contentType("application/json; charset=utf-8");