如何调用在播放非GET / POST HTTP方法?(How do I invoke non-GET

2019-09-17 01:24发布

我有一个RESTful播放2.0应用程序,我想打电话DELETE /sessions从浏览器的链接。

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

此外,我必须创建一个单独的形式或XMLHttpRequest ,以便从链接的调用方法href或者是有什么样的Rails的data-method的属性?

Answer 1:

你不会做,与常见的链接。

从谷歌网上论坛类似话题引用 :

链接(A标签)不打算用DELETE方法来工作。 链接的语义是“连接”到另一个资源,其中可以检索使用GET请求。 在形式使用POST方法和包含名称为“X-HTTP-方法-覆盖”的隐藏的输入和值“DELETE”你可以做DELETE请求在Ajax或。

那是什么意思是:你需要使用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>


文章来源: How do I invoke non-GET/POST HTTP methods in Play?