Play 2.3.X の場合、WS モジュールは非常に簡単に使用できます。
WS.url(s"http://$webEndpoint/hand/$handnumber").get()
そんなシンプルでストレートな使い方のために。
リンクに従って Play 2.6.x にいる間: https://www.playframework.com/documentation/2.6.x/JavaWS 最初に http クライアントを作成する必要があります。
WSClient customWSClient = play.libs.ws.ahc.AhcWSClient.create(
play.libs.ws.ahc.AhcWSClientConfigFactory.forConfig(
configuration.underlying(),
environment.classLoader()),
null, // no HTTP caching
materializer);
さらに、マテリアライザーと、マテリアライザーをサポートするための akka システムも必要です。
String name = "wsclient";
ActorSystem system = ActorSystem.create(name);
ActorMaterializerSettings settings = ActorMaterializerSettings.create(system);
ActorMaterializer materializer = ActorMaterializer.create(settings, system, name);
// Set up AsyncHttpClient directly from config
AsyncHttpClientConfig asyncHttpClientConfig = new DefaultAsyncHttpClientConfig.Builder()
.setMaxRequestRetry(0)
.setShutdownQuietPeriod(0)
.setShutdownTimeout(0).build();
AsyncHttpClient asyncHttpClient = new DefaultAsyncHttpClient(asyncHttpClientConfig);
// Set up WSClient instance directly from asynchttpclient.
WSClient client = new AhcWSClient(
asyncHttpClient,
materializer
);
WS クライアントにさらに多くの機能が追加されることはわかっていましたが、単純な http クライアントが必要な場合は、使用法が複雑になり、非常に複雑になります。