春节休息DELETE请求方法(Spring REST for DELETE Request Meth

2019-08-17 23:16发布

我在我的控制器下面的方法

@RequestMapping(value = "processPurchase/{poid}", method = RequestMethod.DELETE)
public String processOrder(@PathVariable int poid) {
    // do some processing
    return acceptPurchaseForm;
}

我的HTML

<form id="purchase-list-form" class="form-horizontal" action="/MyNewApp/processPurchase/" method="post">
<input type="hidden" name="_method" value="delete">
<input type="hidden" name="poid" value="">

通过以上我仍然得到以下错误

WARN : org.springframework.web.servlet.PageNotFound - Request method 'DELETE' not supported

任何帮助表示赞赏。

Answer 1:

首先,我假设你有HiddenHttpMethodFilter在web.xml配置。 它需要将您的_method与价值删除的DELETE RequestMethod

其次, poid被在请求的主体通过,但在你的控制器,你希望它在URL中传递。 这或许可以解释为什么春天是无法映射请求。

编辑1:

要通过poid的网址,你会在你的形式采取行动,包括为您生成HTML时。 这取决于你的视图技术(我用的Freemarker),但你会被要求做这样的事情:

<form action="/MyNewApp/processPurchase/${poid}" method="post">

假设POID写入到被绑定到您的视图模型。



文章来源: Spring REST for DELETE Request Method