我正在尝试测试网络服务。我正在使用下面的课程进行测试
public class GitHubClientTest {
private WebService client;
private WSClient ws;
private Server server;
@Before
public void setup() {
UMStateUpdate evt = new UMStateUpdate(2040, 0, 5, 0L, "CAR", false, "");
// JsonNode tataa= Json.toJson(evt);
//1-colocar esse serve la no webservice...
//se funcionar o 1,então 2- testar novamente aqui se recebe dados certinho
server = Server.forRouter((components) -> RoutingDsl.fromComponents(components).POST("/web").routeTo(()->{
ArrayNode repos = Json.newArray();
UMStateUpdate evta = new UMStateUpdate(2040, 0, 5, 0L, "CAR", false, "");
JsonNode tata= Json.toJson(evta);
repos.add(tata);
return ok(repos);
}).build());
ws = WSTestClient.newClient(server.httpPort());
client = new services.WebService(ws);
client.baseUrl="";
System.out.print(server.httpPort());
}
@After
public void tearDown() throws IOException {
try {
ws.close();
}
finally {
server.stop();
}
}
@Test
public void repositories() throws Exception {
JsonNode repos = client.unidademoveis().toCompletableFuture().get(10, TimeUnit.SECONDS);
// assertThat(repos, hasItem("/Hello-World"));
System.out.println(repos);
}
}
但是,当使用 POST (.POST ("/web").RouteTo (()) 我得到这个错误 java.util.concurrent.ExecutionException: java.lang.RuntimeException: Error parsing JSON of WS wsBody response
但是在使用GET(.GET("/web").)RouteTo(()-)的时候正常工作,会是什么呢?我想使用 post,因为它是一个网络服务,我将始终在其中发布以发送数据。我帮