2

我有一个 RESTful Play 2.0 应用程序,我想DELETE /sessions从浏览器中的链接调用。

我该怎么做呢?Rails 有一个对非 GET/POST 请求使用_method查询参数的约定,但 Play 的文档没有提到这一点。

另外,我是否必须创建一个单独的表单或者XMLHttpRequest为了从链接调用该方法,href或者是否有类似 Rails 的data-method属性?

4

1 回答 1

0

您不会使用公共链接来执行此操作。

引用 Google Groups 上的类似主题

链接(A 标记)不适用于 DELETE 方法。链接的语义是“链接”到另一个资源,可以使用 GET 请求进行检索。您可以在 Ajax 中执行 DELETE 请求,或者在表单中使用 POST 方法并包含名称为“X-HTTP-Method-Override”和值为“DELETE”的隐藏输入。

那是什么意思:您需要使用 GET 删除该项目:

conf/routes

GET   /delete/:itemId    controllers.Application.deleteItem(itemid : Long)

在你看来:

<a href="@routes.Application.deleteItem(item.id)">Delete @item.name</a>

或者使用 AJAX 调用:

<script type="text/javascript">
    $.ajax({
        url:"@routes.Application.actionToDeleteSomething()",
        type:"DELETE"
    });
</script>
于 2012-05-06T18:00:21.667 回答