我正在构建一个HTTP RESTful API,我的操作包括在mongo数据库中获取以JSON格式定义的资源,并将其返回到客户端要求的格式。
根据客户的选择,说路线GET /api/media/{mediaId}
应该能够以下列格式发送媒体:
json
,xml
,html
,pdf
,zip
,tar
,tar.gz
(对于每种归档类型,包含的文件可以是json
,xml
,{{1} }或html
文件,再次,根据客户选择)所以我将服务器编码为读取pdf
请求标头,以提供匹配的媒体类型。
对于这些格式:
Accept
文件:json
Accept: application/json
文件:xml
Accept: application/xml
文件:html
Accept: application/html
文件:pdf
但是我为存档格式选择正确的媒体类型时遇到问题(Accept: application/pdf
,zip
,tar
)
以下解决方案是否可以接受?
tar.gz
个文件的zip
个文件:json
application/zip+json
个文件的zip
个文件:xml
application/zip+xml
个文件的zip
个文件:html
application/zip+html
个文件的zip
个文件:pdf
application/zip+pdf
个文件的tar
个文件:json
application/tar+json
个文件的tar
个文件:xml
application/tar+xml
个文件的tar
个文件:html
application/tar+html
个文件的tar
个文件:pdf
...
或者我应该使用供应商树?
application/tar+pdf
个文件的zip
文件:json
...
- 请求包含Accept: application/vnd.mycompany.zip+json
个文件的tar
文件:pdf
...
...或者我应该使用其他语法?