假设我正在设计一个 REST API,并且我需要客户端能够获取带有元数据的文件。设计资源/操作的好方法是什么?
我想到了一些想法:
单个资源(即 GET /files/{fileId}),返回包含文件和带有元数据的 JSON/XML 结构的多部分响应。我有一种感觉,这不是一个很好的方法。例如,您不能使用客户端的 Accept 标头来确定它们是否需要 XML 还是 JSON 元数据表示形式,因为在这两种情况下响应类型都是多部分的。
两个资源(即 GET /files/{fileId} 和 GET /files/{fileId}/metadata),其中第一个返回文件本身,第二个返回带有元数据的 JSON/XML 结构。可以存在从元数据到文件的链接。但是,如何将元数据的链接与文件一起发送?
我建议使用您提出的第二个想法。这是大多数主要网络驱动器(Box、Dropbox、Google Drive 等)所使用的策略。它们通常具有明显不同的 URL,因为它们将内容和元数据存储在不同的位置。
您可以将链接标头添加到文件响应中,并包含元数据的链接。链接标头的描述见RFC 5988 https://www.rfc-editor.org/rfc/rfc5988。当前注册的链接关系集合为here http://www.iana.org/assignments/link-relations/link-relations.xhtml。即兴看来,describedBy
关系在这里是合适的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)