从 Play Framework 更改 WS API! 2.4 至 2.5
Changing WS API from Play Framework! 2.4 to 2.5
有了 Playframework! 2.5 WS 请求的结果现在是 CompletionStage<WSResponse>
.
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>
之前,我可以很容易地从 promise 中获得结果,但我不知道如何使用 CompletionStage
获得结果。在继续程序之前,我需要处理结果。
我喜欢这个结果的原因是这个函数在 'for' 循环中执行,收集信息然后返回。
我想我是在:
completionStage.toCompletableFuture();
有了 Playframework! 2.5 WS 请求的结果现在是 CompletionStage<WSResponse>
.
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>
之前,我可以很容易地从 promise 中获得结果,但我不知道如何使用 CompletionStage
获得结果。在继续程序之前,我需要处理结果。
我喜欢这个结果的原因是这个函数在 'for' 循环中执行,收集信息然后返回。
我想我是在:
completionStage.toCompletableFuture();