Mar*_*ark 5 dependency-injection scala playframework-2.0
这是我想要做的
package gc.services.http.playWs.lmi
import com.softwaremill.macwire.Macwire
import play.api.Play.current
import play.api.libs.ws._
import play.api.libs.ws.ning.NingAsyncHttpClientConfigBuilder
import scala.concurrent.Future
import play.api.libs.ws.{WSResponse, WSRequestHolder, WSClient}
import scala.concurrent.Future
class LmiWs extends Macwire{
val baseUrl = "http://api.lmiforall.org.uk/api/v1"
//inject plays ws client
lazy val http = wire[WSClient]
def getRequestHolder(url: String = baseUrl): WSRequestHolder = {
http.url(url)
}
def get(request: WSRequestHolder): Future[WSResponse] = {
request.get()
}
}
Run Code Online (Sandbox Code Playgroud)
如果我尝试 wire[WS] IntelliJ 给出无法解析的符号。上面的 IntelliJ 中没有显示错误,但是在编译时 mac wire throws
找不到 WeakTypeTag 的构造函数[play.api.libs.ws.WSClient]
这个类只是为我想要点击的应用程序定义基本路由,它会针对每个特定路由通过一些不同的类进行扩展。我希望能够模拟 WS 依赖项,这样当我测试这个和后代类时,我可以在不发送实际 HTTP 请求的情况下这样做。
| 归档时间: |
|
| 查看次数: |
702 次 |
| 最近记录: |