1

今天的浏览器(或 HTML < 5)只支持 HTTP GET 和 POST,但要与 RESTful 通信,也需要 PUT 和 DELETE。如果解决方法不应该是使用 Ajax,则需要隐藏表单字段之类的东西来覆盖实际的 HTTP 方法。

Rails 使用以下技巧:

<input name="_method" type="hidden" value="put" />

有没有可能用 JAX-RS 做类似的事情?

4

3 回答 3

2

严格来说不是 JAX-RS 解决方案,但 spring 3.0 附带了一个HiddenHttpMethodFilter完全实现 rails 所做的技巧的方法,默认为相同的_method参数。

请注意,您不需要使用所有 spring 来使用此过滤器,您可以在您的配置中配置它web.xml并忽略 spring 的其余部分。

于 2011-05-11T10:50:56.220 回答
1

泽西岛也有类似的东西,虽然过滤了一个标题字段。文档可以在这里找到

于 2011-05-11T11:00:51.293 回答
0

引用罗伊菲尔丁的话:

无论如何,有很多 RESTful 服务除了 GET 和 POST 什么都不做。关键是如何使用这些方法,而不是使用什么方法。举一个具体的例子,是什么让 wiki 或多或少 RESTful 几乎总是取决于它如何(ab)使用 GET 和会话——相比之下,它是否使用 PUT 或 POST 来编辑页面是糖顶。

重点是我的,取自这篇文章 http://tech.groups.yahoo.com/group/rest-discuss/message/10746

于 2010-05-14T12:51:50.300 回答