无法执行REST Post请求 - 使用REST Assured

时间:2016-03-29 11:38:54

标签: web-services rest rest-assured

我无法使用REST保证执行我们的REST post url。我收到状态404错误。我们的REST URL不需要任何身份验证,正文等。相同的url在POSTMAN,RESTEasy中工作正常。我尝试了所有四种组合来获得响应

@Test 
public void httpPost() throws JSONException,InterruptedException { 
//Initializing Rest API's URL 
String APIUrl = "http://xyz:8080/jbpm-console/rest/runtime/317002:31702Project:0.0.5-SNAPSHOT/process/317002Project.ScriptTask/start?superUser=cw-user"; 
RequestSpecBuilder builder = new RequestSpecBuilder(); 
builder.setContentType("application/json;charset=UTF-8"); 
RequestSpecification requestSpec = builder.build(); 

//Response response = given().spec(requestSpec).when().post(APIUrl);
//Response response= given().contentType("application/json").when().post(APIUrl);
Response response = given().authentication().preemptive().basic("", "").spec(requestSpec).when().post(APIUrl); 
//Response response= expect().contentType("application/json;charset=UTF-8").statusCode(200).when().post(APIUrl);

JSONObject JSONResponseBody = new JSONObject(response.body().asString()); 
System.out.println(JSONResponseBody);
}

1 个答案:

答案 0 :(得分:0)

URL file = Resources.getResource("ModyNewFieldsReq.json");

String myRequest = Resources.toString(file,Charsets.UTF_8);

        Response fieldResponse =  given ()
           .header("Authorization", AuthrztionValue)
           .header("X-App-Client-Id", XappClintIDvalue)
           .contentType("application/vnd.api+json")
           .body(myRequest).with()

         .when()
           .post(dataPostUrl)    

        .then()
           .assertThat()
           .log().ifError()
           .statusCode(200)
           .extract().response();

      Assert.assertFalse(fieldResponse.asString().contains("isError"));