我有一个RESTful Play 2.0应用程序,我想通过浏览器中的链接呼叫DELETE /sessions
。
我该怎么做? Rails有一个为非GET / POST请求使用_method
查询参数的约定,但Play的文档没有提到这一点。
另外,我是否必须创建单独的表单或XMLHttpRequest
才能从链接的href
调用方法,或者是否有类似Rails data-method
属性的内容?
答案 0 :(得分:0)
你不会用共同的链接做到这一点。
Cite from similar topic on 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>