如何在go中使用REST服务复制文件时保留io.Reader的时间戳?

时间:2016-05-14 10:03:38

标签: rest go

我正在Go中编写一些处理不同文件的微服务。

我想通过PUT方法将文件从一个服务,客户端传输到另一个服务器,服务器。服务有效,但有一点不优雅。当我将它们写在服务器的文件系统上时,我传输的文件将获得一个新的修改日期。

目前我在服务器上处理http.Request,如下所示:

  • 确保服务器上有文件
  • 将正文从请求复制到服务器io.Copy(myfile, r.Body)

当我这样做时,文件具有从现在开始的最后修改日期()。要解决此问题,我可以传输原始文件的时间戳并通过io.Chtimes()进行设置。但是request.Body实现了一个io.ReadCloser接口,所以我认为必须有一种更优雅的方式来实现将文件写入服务器。是否有一个函数,它需要io.Reader来保留文件的时间戳? 如果没有,是否有针对此问题的REST服务解决方案?

0 个答案:

没有答案