【问题标题】:Send POST request with a body using scala and play framework使用 scala 和播放框架发送带有正文的 POST 请求
【发布时间】:2016-11-02 09:15:11
【问题描述】:

我正在尝试使用播放框架和 scala 将发布请求发送到外部 url。我还想在正文中添加一些参数。 我想使用参数 TransactionNo='T10000'reqtype='T' 向“http://www.posonlinedemo.tk”发送一个帖子请求 我该怎么办?

这是我的行动

def test(para:String) = Action {
      val url: Option[String] = Some("http://www.posonlinedemo.tk")

         url match {
             case Some(url) => Redirect(url)
             case None => NotFound("This URL leads nowhere. :(")
         }

}

【问题讨论】:

    标签: scala playframework


    【解决方案1】:

    您可以使用Play WS API

    正如您在文档中看到的,就是这么简单:

    ws
      .url(url)
      .post(Map(
        "TransactionNo" -> Seq("T10000"), 
        "reqtype" -> Seq("T")))
    

    不要忘记将ws 添加到您的库依赖项中。

    【讨论】:

    • ws 不支持。我也关注了你的链接。很少有编译错误随之而来。 ** 对象 HttpEntity 不是 play.api.http 包的成员** ** 对象流不是包 akka 的成员 **
    • Play 的哪个版本!你正在用吗?我发布的代码片段是用 Play 编译的! 2.4 和玩! 2.5 是你正确地将 ws 添加到你的库依赖中并且你注入它或将它导入到使用它的文件中。
    • 我使用的是 2.4.6 版
    • 所以它可以工作,我只是测试了它以确保它。你得到的错误不是来自这个sn-p的代码。你应该接受答案。
    猜你喜欢
    • 2019-03-13
    • 2018-03-05
    • 2020-06-22
    • 2023-03-29
    • 2021-08-13
    • 2021-03-12
    • 2018-04-04
    • 1970-01-01
    • 2019-03-15
    相关资源
    最近更新 更多