【发布时间】:2020-11-05 03:31:05
【问题描述】:
我正在开发一个 API,给定具有特定内容的请求正文,它会生成一个可以采用不同格式(例如 pdf、png 等)的文档。鉴于文档可以是二进制文件,该文件采用 base64 编码并放置在如下所示的 json 响应中:
{
"document": "document base64-encoded"
}
回复可能包含其他字段,但它们与问题无关。
我的问题是:
指定字段document的内容类型(例如pdf)和内容编码(例如base64)的最佳方式是什么?
我想到了一些选择,但我想听听你的建议。
我的选择
- 使用标头参数
Content-Type和Content-Transfer-Encoding:我认为这个选项是错误的,因为这些参数适用于消息本身,在这种情况下是application/json,没有任何编码。 - 指定自定义参数(例如
x-document-content-type和x-document-content-tranfer-encoding。 - 在响应正文中包含此类元数据,如下所示:
{
"document": {
"content": "document base64-econded",
"type": "pdf",
"econding": "base64"
}
}
感谢您的意见!
【问题讨论】:
标签: json api types header base64