1

如何使用 Scala Play 将请求数据从 POST 请求发送到 GET 请求?(使用 Play Framework 2.1.1)

我的目标是有一个像这样工作的单页“报告”:报告是一个 GET 请求,因此如果需要,您可以将此报告添加为书签。该报告由一个模型表组成,每个模型行末尾都有一个删除按钮。我想单击删除按钮,让它将 id 发布到我的控制器,然后重新加载页面,报告过滤器参数仍然打开。

目前,我将删除按钮添加到 get 中,它可以正常工作,但 remove=id 参数保留在请求/地址栏中。因此,每次重新加载页面时它都会尝试删除此模型。我想做的是让这个表单 POST 然后删除模型,然后将除删除之外的所有请求参数发送到 GET 请求。

我宁愿在没有 javascript/AJAX 的情况下这样做。

4

1 回答 1

0

您可以通过使用请求对象中的 queryString 和路径来重建 URL。然后将其重定向回来(不带删除参数) 如何在java play框架中获取查询字符串参数?

或者,如果您在路由文件中有调用设置来解析,请使用反向路由减去删除参数。 播放框架 - 使用参数重定向 http://www.mariussoutier.com/blog/2012/12/10/playframework-routes-part-1-basics/

  def index() = Action { request =>
    import play.api.Play.current
    println(request.queryString)
    val allWithoutDel = request.queryString - "del"   //del is the query parameter
    println(allWithoutDel)
    val url = request.path + // fold or map the allWithoutDel down to a URL string again
    redirect(url)
    }
于 2013-06-28T17:58:23.140 回答