1

我是 Scala 和 Play 框架的新手。我在使用 Play 的 play.api.libs.ws.WS 发送 Web 请求时遇到问题。我想用相同的查询字符串调用外部 API 并获得响应。我遇到的麻烦是设置 WS 的 withQueryString

上下文中的请求示例:

val queryString = request.queryString.map { case (k,v) => k -> v.mkString };
WS.url(someurl)
    .withQueryString(queryString.toList)
    .get()

我收到错误“类型不匹配;找到:需要列表 [(字符串,字符串)]:(字符串,字符串)”

但是,withQueryString 似乎接受许多元组,即 (String, String)*,而不是元组列表。这样做的正确方法是什么?

4

1 回答 1

8

像这样:

.withQueryString(queryString.toList: _*)

这是将某种类型的集合传递给A接受可变数量参数的方法的标准Scala语法A(在你的情况下,(String, String)

于 2013-08-14T00:43:09.263 回答