java – 如何设计一个简单的CRUD REST API

前端之家收集整理的这篇文章主要介绍了java – 如何设计一个简单的CRUD REST API前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在设计一个简单的CRUD REST API.这是我的第一次,所以我想得到一些关于我的设计是否有意义的反馈.

我正在使用HTTP方法:GET,POST,DELETE和UPDATE. API将以JSON格式使用和获取数据.示例网址将如下所示:

GET (list): curl http://<domain>/myapp/rest/v1/colors
POST: curl -XPOST http://<domain>/myapp/rest/v1/colors -d '{
       "name": "red","shade": "light"
      }'
GET (single item): curl http://<domain>/myapp/rest/v1/colors/2
DELETE: curl -XDELETE http://<domain>/myapp/rest/v1/colors/2
etc...

POST请求后,将在数据库中创建一条记录.那么,POST请求是否应该返回新创建的记录的ID?那么ID可以在UPDATE,DELETE和GET(单项)中使用?

解决方法

HTTP specification为POST定义了以下内容

If a resource has been created on the origin server,the response SHOULD be 201 (Created) and contain an entity which describes the status of the request and refers to the new resource,and a Location header (see section 14.30).

所以这基本上意味着:

>您应该返回201 Created as status code>您应返回Location标头,指向新创建的资源的URI>您可以选择在POST响应正文中包含资源的表示,以使客户端不必针对从Location标头获取的值发出另一个GET请求.

猜你在找的Java相关文章