选择资源以使用RestApi下载文件的最佳方法是哪种?

时间:2018-03-19 16:18:16

标签: rest restful-architecture restful-url

我需要下载一个文件,但是,我想知道哪个是发布我的资源的最佳方法。 假设我有一份文件

http://api/documents/id

我在哪里发出GET请求我应该收到带有该id的文档的信息,包括一个带有BASE64中文件的字符串表示的额外字段?或者我应该发布其他网址资源,如

http://api/documents/id/download

只是为了获取文件?第一个我知道怎么做,但我不知道这是不是正确的方法。随后我需要建议。

2 个答案:

答案 0 :(得分:2)

据我了解,您的<mz-dropdown-item><button mz-button (click)="goTo('logout')">Logout</button></mz-dropdown-item> 资源包含元数据和文档的实际内容。所以你可以支持以下内容:

  • document:返回文档元数据的表示
  • GET /documents/:id:返回文档内容的表示

或者,您可以支持单个端点,例如GET /documents/:id/content,并在多部分响应中返回元数据和内容。

内容协商虽然是最好的方法。您可以使用单个端点(例如GET /documents/:idGET /documents/:id)作为元数据,例如Accept: application/json作为内容。

答案 1 :(得分:0)

怎么样

GET /documents/:id用于元数据
GET /documents/:id?action=download获取内容