我听说在 REST 世界中,POST
建议创建条目,而PUT
建议更新条目。
首先,我想确认一下这个陈述。
然后,使用这个假设,假设我有一个@POST方法来创建用户和一个@PUT方法来更新用户(用@QueryParam来传递用户ID)。
将参数传递给POST
和PUT
的正确方法是什么?
@FormParam
是否适合@PUT
?或者我应该在身体中传递JSON
吗?
我应该以同样的方式为@POST
和@PUT
或其他方式传递参数吗?
或者我应该使用POST
吗?
编辑:这个问题最初显示了一个对我不起作用的例子,但这是因为我的测试工具做错了。它现在适用于POSTMAN。
答案 0 :(得分:0)
是的,使用REST,您通常使用以下内容:
POST
PUT
PATCH
由于您必须发送的内容与资源的状态相对应,因此您必须在请求正文中提供。
这两个实体(用于添加和更新)类似,但存在一些差异。例如,如果您希望RESTful服务自动生成某些字段,则不必提供相应的字段。
以下是示例请求:
POST /contacts
{
"lastName": "my last name",
"firstName": "my first name",
}
(corresponding response status code: 201 - Created)
PUT /contacts/contactid
{
"lastName": "my last name",
"firstName": "my first name",
}
(corresponding response status code: 204 - No content)
您可以注意到JSON不是您可以使用的唯一格式。也可以使用XML,YAML等。
我认为以下链接可以为您提供一些提示:
希望它可以帮到你, 亨利