【问题标题】:Sending Image And Metadata Using Restful - JSON使用 Restful - JSON 发送图像和元数据
【发布时间】:2019-03-09 13:51:45
【问题描述】:

我对 HTTP/2 有点陌生。我了解到使用 HTTP/2 我们可以向服务器发送多个请求,而无需等待先前的响应。好吧,我想将图像文件发送到很大的服务器(超过 500 MB)。列出的方法有以下here

  1. Base64 对文件进行编码,代价是数据大小增加了大约 33%。
  2. 首先在multipart/form-data POST 中发送文件,并将ID 返回给客户端。然后客户端发送带有 ID 的元数据,然后 服务器重新关联文件和元数据。
  3. 先发送元数据,返回一个ID给客户端。然后客户端发送带有ID的文件,服务器重新关联 文件和元数据。

我不想使用第一个解决方案,因为它会使文件大小增加 33%。我想使用第三种解决方案。

由于我使用的是 HTTP/2,所以我的问题是

  1. 是否可以同时发送元数据和图像而无需等待来自服务器的 ID?
  2. 如果是,那么我该如何实施?比如我是否必须在服务器端为客户端执行多线程,或者如何将元数据和图像相互关联?
  3. 如果不是,那我应该选择传统风格的 HTTP/1.1 吗?

我正在使用 Restful 和 JSON 进行通信。更具体地说,我使用 C# 命令行客户端将图像和 Asp.Net 作为服务器发送。

【问题讨论】:

    标签: asp.net json rest http2


    【解决方案1】:

    您可以使用multipart/related type 发出具有相关mime 类型的请求。即在您的情况下,您可以发送图像以及 JSON 正文数据。

    您可以参考Google drive file upload api ,它的实现非常相似。

    【讨论】:

    • 图像数据将作为byte[]或base64发送?
    • 会类似于一般的multipart/form-data为byte[]。
    猜你喜欢
    • 2020-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-01
    • 1970-01-01
    • 2014-05-28
    • 1970-01-01
    • 2016-02-05
    相关资源
    最近更新 更多