【发布时间】:2021-01-23 13:34:15
【问题描述】:
我是 Java 和 REST API 的初学者。我在将表单数据从 HTML 传递到 rest PUT 方法时遇到问题。当我对此进行谷歌搜索时,大多数可用的解决方案都适用于POST 方法,建议使用FormParam。就我而言,它显示以下错误:
请求行中收到的方法是源服务器已知的,但目标资源不支持。
即使我使用PathParam,也会返回相同的错误:
请求行中收到的方法是源服务器已知的,但目标资源不支持。
还有一些针对 Spring Boot 的解决方案。但我没有使用它。
PUT 方法:
@PUT
@Path("/update")
@Produces(MediaType.TEXT_HTML)
public String updCard(@PathParam("cardNo") String cardNo,
@PathParam("reportId") int reportId
) throws SQLException {
Card c = new Card(cardNo, reportId);
System.out.println(cardNo + reportId);
return "";
}
表格:
<form method="PUT" action="rest/card/update">
<label for = "cardNo">Card No: </label> <input type="text" name = "cardNo" id = "cardNo"><br/>
<label for = "reportId">Report Id:</label> <input type="text" name = "reportId" id = "reportId"> <br/>
<button type="submit">Update</button>
那么,我如何在 Jersey 的 PUT 方法中获取表单数据?
【问题讨论】:
-
@AndreiKovrov,让我试试。谢谢..
-
@AndreiKovrov.. 我已经看到了.. 还有提到
FormParm仅用于POST.. 我也尝试了第二个答案,没有运气..