Rest Assured / Stack Exchange API:尝试从Eclipse击中服务时无法获得成功响应

时间:2019-02-20 10:15:51

标签: java rest web-services

我试图使用GET HTTP请求命中堆栈交换API之一,以使用RESTAssured JAVA进行测试。但是,我得到的响应码是400,而不是200。我使用POSTMAN尝试了相同的代码,并且工作正常。请帮助。

RestAssured.baseURI="https://api.stackexchange.com";

    RestAssured.useRelaxedHTTPSValidation();
    ///2.2/answers?order=desc&sort=activity&site=stackoverflow
Response res = given().
    param("order=desc&sort=rank&site=stackoverflow").
    when().
get("/2.2/badges"). 
then().assertThat().statusCode(200).and().contentType(ContentType.JSON). 
extract().response();
String text = res.asString();
System.out.println(text);


}

响应:

{"error_id":400,"error_message":"site is required","error_name":"bad_parameter"}

1 个答案:

答案 0 :(得分:2)

这就是方法param()的工作方式:

given().
param("order", "desc").
param("sort", "rank").
param("site", "stackoverflow").
when().
get("/2.2/badges")