1

我有一个客户端对公开 REST API 的服务器进行 REST 调用。这是我迄今为止实施的:

  override def getData[T](reqURL: String, requestParam: Option[Seq[(String, String)]])(responseHandler: T => Unit) = {

    val onSuccess: PartialFunction[String, Unit] = {
      case s => responseHandler(s.asInstanceOf[T])
    }
    val onFailure: PartialFunction[Throwable, Unit] = {
      case e => e.printStackTrace
    }

    val request = requestParam match {
      case Some(params) => url(reqURL).as_!("user", "pass") <<? params
      case None         => url(reqURL).as_!("user", "pass")
    }
    Http(request OK as.String).onSuccess(onSuccess).onFailure(onFailure)
  }

它工作得很好,但我注意到即使在调用完成后 HTTP 连接也是打开的。如何关闭此连接?我可能想在 onSuccess 或 onFailure 调用发生后执行此操作。有什么建议么?

4

0 回答 0