RESTful Web 服务 - 资源
什么是资源?
REST 架构将每个内容视为资源。这些资源可以是文本文件、Html 页面、图像、视频或动态业务数据。REST 服务器仅提供对资源的访问,而 REST 客户端则访问和修改资源。这里每个资源都由 URI/全局 ID 来标识。REST 使用各种表示形式来表示资源,其中包括 Text、JSON、XML。最流行的资源表示形式是 XML 和 JSON。
资源的表示
REST 中的资源类似于面向对象编程中的对象,或者类似于数据库中的实体。一旦资源被识别,那么它的表示将使用标准格式来决定,以便服务器可以以上述格式发送资源,并且客户端可以理解相同的格式。
例如,在RESTful Web 服务 - 第一个应用程序章节中,用户是使用以下 XML 格式表示的资源 -
<user> <id>1</id> <name>Mahesh</name> <profession>Teacher</profession> </user>
相同的资源可以用 JSON 格式表示,如下所示 -
{ "id":1, "name":"Mahesh", "profession":"Teacher" }
良好的资源代表性
REST 不对资源表示的格式施加任何限制。客户端可以请求 JSON 表示,而另一个客户端可能向服务器请求相同资源的 XML 表示,依此类推。REST 服务器负责以客户端理解的格式向客户端传递资源。
以下是在 RESTful Web 服务中设计资源表示格式时需要考虑的一些要点。
可理解性- 服务器和客户端都应该能够理解和利用资源的表示格式。
完整性- 格式应该能够完整地表示资源。例如,一个资源可以包含另一个资源。格式应该能够表示简单和复杂的资源结构。
可链接性- 资源可以链接到另一个资源,格式应该能够处理这种情况。
然而,目前大多数 Web 服务都使用 XML 或 JSON 格式来表示资源。有大量库和工具可用于理解、解析和修改 XML 和 JSON 数据。