- 作者:老汪软件技巧
- 发表时间:2024-08-30 10:02
- 浏览量:
RESTful API(Representational State Transfer)是一种基于HTTP协议的接口设计风格,用于构建网络服务。
Restful API 也是目前十分经典并且被广泛应用的 API 书写规范。你可以在各类网站上看到的它的影子。
如果你想要设计一个更加规范的网站,那么 Restful API 是你最值得了解的一个知识点。
开始
这是一个 RESTful API 例子:
POST https://api.example.com/v1/libraries/1/categories/2/books
Content-Type: application/json
{
"title": "The Art of Computer Programming",
"author": "Donald E. Knuth",
"isbn": "978-0201896831",
"publicationDate": "1968-01-01"
}
上述中的例子具有几个部分:
Restful API 更多的部分
除了上述的部分,Restful API 还可以具有更多,例如参数:
GET /users?page=1&pageSize=10
使用 HATEOAS(Hypermedia As The Engine Of Application State)来提高 RESTful API 的可发现性:
GET /users/1
{
"id": 1,
"name": "Tom",
"age": 25,
"links": [
{
"rel": "orders",
"href": "/users/1/orders"
},
{
"rel": "edit",
"href": "/users/1/edit"
}
]
}
客户端可以通过 API 返回的链接自主地遍历 API,并进行资源的操作。
Restful API 的发展
RESTful API 的未来发展方向主要包括以下几个方面:
QA
Q:为什么在RESTful API设计中,经常使用复数名词作为路径的一部分?
A:
资源集合的概念 在RESTful架构中,每个URL代表一种资源。通常情况下,API会操作资源的集合(collection)。使用复数名词可以直观地表示这一点。例如:
语义清晰 复数名词明确地表示资源的集合,而单数名词(id)则表示单个资源。这有助于使API的语义更加清晰。例如::
参考资料
RESTful API 设计指南 - 阮一峰的网络日志
REST API 设计规范:最佳实践和示例