使用Restful发送图像和元数据-JSON

时间:2018-10-04 08:21:42

标签: asp.net json rest http2

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

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

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

因为我使用的是HTTP / 2,所以我的问题是

  1. 我可以同时发送元数据和图像而不必等待服务器的ID吗?
  2. 如果是,那么我该如何实施?就像我必须在客户端的服务器端执行多线程操作,或者如何将元数据和图像彼此关联?
  3. 如果否,那我应该选择常规样式的HTTP / 1.1吗?

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

1 个答案:

答案 0 :(得分:0)

您可以使用multipart/related type发出具有相关mime类型的请求。也就是说,您可以将图片与JSON正文数据一起发送。

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