在我的scala play框架应用程序中,我必须根据List中的url动态调用多个REST调用。
我遇到了多个电话的以下代码:
val futureResponse = for {
responseOne <- WS.url(url1).get()
responseTwo <- WS.url(url1).get()
responseThree <- WS.url(url1).get()
} yield processCalls(responseOne, responseTwo, responseThree)
但是我怎样才能使它成为动态的,以便从列表中挑选网址,并且响应也存储在列表中以供进一步处理。
答案 0 :(得分:1)
这样的事情:
val urls: Seq[String] = ...
val results: Future[Seq[WSResponse]] =
Future.seq(
urls.map(url => wsClient.url(url).get)
)