0

С Playframework! 2.5 результат запроса WS теперь равен CompletionStage<WSResponse>.Изменение API WS из Play Framework! 2.4 до 2.5

CompletionStage <WSResponse> completionStage = ws.url("http://url/enewsletter/signupAuto.aspx") 
      .setRequestTimeout(2500) 
      .setQueryParameter("email", user.getEmail()) 
      .get(); 
CompletionStage <String> resultPromise = completionStage.thenApply(WSResponse::getBody); 

//String result = responsePromise.get(2500).getBody(); 
String result = ""; // ????? 

я мог легко получить результат с обещанием в перед использованием F.Promise<WSReponse>, но я не вижу, чтобы получить, как получить результат с CompletionStage. Перед продолжением процедуры мне нужен результат для обработки.

Причина, по которой мне нравится иметь результат, заключается в том, что эта функция выполняется в форме сбора 'для', которая затем возвращается.

ответ

0

Я думаю, что я нашел его в:

completionStage.toCompletableFuture(); 
+1

Там есть общее руководство миграции здесь: https://www.playframework.com/documentation/2.5.x/JavaMigration25 и HTTPS: //www.playframework. com/documentation/2.5.x/api/java/play/libs/F.Promise.html имеет примечания в устаревании, показывающие, какие методы использовать. –

 Смежные вопросы

  • Нет связанных вопросов^_^