【问题标题】:Headers for REST API with optional Base64 encoding带有可选 Base64 编码的 REST API 标头
【发布时间】:2019-05-18 17:49:13
【问题描述】:

我们有一个媒体文件存储库,其他服务通过 REST API 与之通信。由于各种原因,我们希望存储库的用户能够通过 HTTP 直接上传和下载文件(文本文件为纯文本,二进制文件为字节数组)和使用 Base64 编码。我们希望将文件以 Base64 编码上传(PUT、POST)和请求下载(GET)这一事实反映在 HTTP 请求的标头中。

我们如何反映请求或请求响应的内容在 HTTP 标头中是 Base64 编码的事实?

到目前为止,我倾向于在 Content-Type 标头中的 mime 类型之后附加 ;base64,例如 Content-Type: image/png;base64。其他选项(X- 标头、Content-Encoding)在in this related question 进行了讨论,但没有为我们的问题提供令人满意的解决方案。

【问题讨论】:

    标签: rest http header


    【解决方案1】:

    您必须使用Content-Transfer-Encoding 标头。

    它在 RFC https://www.rfc-editor.org/rfc/rfc2045#page-14.

    支持base64等值,如"7bit" / "8bit" / "binary" / "quoted-printable" / "base64" / ietf-token / x-token

    此标头专为您的情况设计,用作 MIME 类型的补充。

    【讨论】:

    • HTTP 中没有 Content-Transfer-Encoding。
    猜你喜欢
    • 2012-02-06
    • 2012-12-17
    • 1970-01-01
    • 1970-01-01
    • 2017-05-24
    • 2018-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多