我们正在建立框架以自动测试Rest服务。作为POC,我们正在从事身份验证服务,并且代码工作文件来自客户端网络外部。但是,当我们在客户端网络中运行相同的代码时,会出现与连接重置有关的错误。我在这里为代码提供了修改(无法公开某些信息)。
代码可以从外部客户端网络正常运行,当我们尝试访问任何免费的可用服务时,我们都会得到正确的响应。
公共类GetOperation {
public static void main(String[] args) {
// TODO Auto-generated method stub
try
{
/*
//
RestAssured.baseURI = "https://httpbin.org";
Response res = given().
when().
get("/get").
then().assertThat().statusCode(200).and().extract().response();
System.out.println(res.asString());
*/
RestAssured.baseURI = "URI of the service";
Response res = given().
header("PartnerId","value of partner id").
header("Content-Type","application/json").
body("{\r\n\t\"UserName\" : \"username\",\r\n\t\"Password\" : \"password\",\r\n\t\"Role\": \"users role\",\r\n\t\"IPAddress\" : \"IP address\",\r\n\t\"Referer\": \"localhost\",\r\n\t\"URL\":\"mobile://\"\r\n}").
when().
post("/api/v1.0/Authentication/Authentication/AuthenticateUser").
then().assertThat().statusCode(200).extract().response();
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
此代码应返回响应,并且应成功声明状态代码200。我提供了工作正常的代码片段(删除块注释,您将能够看到它的工作原理。)