微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

scala – 用Akka HTTP创建基本的HTTP Post请求的惯用方式

我试图找出如何使用Akka HTTP库创建基本的HTTP POST请求.这是我想出来的:

val formData = Await.result(Marshal(FormData(combinedParams)).to[RequestEntity],Duration.Inf)
val r = HttpRequest(POST,url,headers,formData)

事情是,对我而言似乎有点非惯用语.有没有其他方法从FormData创建一个httpentity?特别是即使数据容易获得,我必须使用等待或返回未来的事实,对于这样一个简单的任务来说似乎过于复杂.

解决方法

您可以使用元帅来理解其他期货,例如您需要发送请求并解除响应的那些:

val content = for {
        request <- Marshal(formData).to[RequestEntity]
        response <- Http().singleRequest(HttpRequest(method = HttpMethods.POST,uri = s"http://example.com/test",entity = request))
        entity <- Unmarshal(response.entity).to[String]
      } yield entity

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐