Я новичок в Akka и java 8. Поэтому я использую pipe для вызова этого метода для вызова службы REST.Все работает нормально, но хотелось бы проверить код ответа, прежде чем разбирать json.или прервать, если код ответа! = 200. И правильно ли это со всеми этими возвращаемыми пустыми результатами?........
Мой пример кода:
CompletionStage<HttpResponse> fetch(LoginUserRequest input) {
CompletionStage<HttpResponse> result = null;
*some json code*
result = http.singleRequest(HttpRequest.POST(url).withEntity(HttpEntities.create(ContentTypes.APPLICATION_JSON, jsonString)));
result.thenCompose(response ->
response.entity().toStrict(10000, materializer))
.thenApply(entity -> {
log.info("före");
CompletionStage<UserResult> userResult = Jackson.unmarshaller(UserResult.class).unmarshal(entity, materializer);
userResult.thenApply(unResult -> {
requester.tell(new LoginUserResponse(unResult.getCredentials().getToken() != null, unResult.getCredentials().getToken()), self());
return unResult;
});
return null;
})
.exceptionally(t -> {
log.error("Exception occurred: " + t.getMessage());
return null;
});
return result;
}