RESTful POST 的资源命名
RESTful Resource Naming for POST
给出这个命名约定:
http://www.restapitutorial.com/lessons/restfulresourcenaming.html
对于 POST(插入)资源的 url 应遵循此 path/logic:
http://www.example.com/products/X123
{
"color":"something"
}
下面的路径在概念上是错误的吗?为什么是 correct/wrong?
http://www.example.com/products
{
"id":"X123"
"color":"something"
}
ID是外部生成的
对于 PUT 也可以应用相同的逻辑吗? (id自然不能改,只能作为ref)
谢谢
在我看来,您的方案最适合 PUT 方法,如果我只知道,我总是更愿意在 url 中包含它 - 这对其他人来说是最清晰的解决方案。
关于在正文中包含 id 的第二部分,对此有很好的回答:
在这个答案中我唯一要改变的是在每个 PUT 请求中包含 id,如果你知道,为什么要隐藏它。
对于 POST(通常用于在集合中创建新项目)使用以下内容:
http://www.example.com/products
{
"color":"something"
}
如果您要求客户端生成 ID,则为
http://www.example.com/products
{
"id": "abc123"
"color":"something"
}
编辑:
对于 PUT 应该是:
http://www.example.com/products/abc123
{
"color":"something else"
}
给出这个命名约定:
http://www.restapitutorial.com/lessons/restfulresourcenaming.html
对于 POST(插入)资源的 url 应遵循此 path/logic:
http://www.example.com/products/X123
{
"color":"something"
}
下面的路径在概念上是错误的吗?为什么是 correct/wrong?
http://www.example.com/products
{
"id":"X123"
"color":"something"
}
ID是外部生成的
对于 PUT 也可以应用相同的逻辑吗? (id自然不能改,只能作为ref)
谢谢
在我看来,您的方案最适合 PUT 方法,如果我只知道,我总是更愿意在 url 中包含它 - 这对其他人来说是最清晰的解决方案。
关于在正文中包含 id 的第二部分,对此有很好的回答:
对于 POST(通常用于在集合中创建新项目)使用以下内容:
http://www.example.com/products
{
"color":"something"
}
如果您要求客户端生成 ID,则为
http://www.example.com/products
{
"id": "abc123"
"color":"something"
}
编辑:
对于 PUT 应该是:
http://www.example.com/products/abc123
{
"color":"something else"
}