我想直接将多部分文件流式传输到AWSS3,而不是先将文件保存到磁盘。在我的golang REST API中接收* multipart.FileHeader类型的文件。现在我想使用s3manager上传方法将此流传输到AWSS3,其中需要在body参数中传递* bytes.Reader。我看到了一个uploading file to AWSS3的例子,其编写方式是从磁盘打开类型为* os.File的文件 os.Open(“filepath”),得到* bytes.Reader out它并传递给AWSS3。现在我正在努力将这个* multipart.FileHeader转换为* os.File。
答案 0 :(得分:4)
致电multipart.FileHeader
上的Open。它将返回multipart.File
,它将为文件提供一个阅读器(将保存在内存中)。
答案 1 :(得分:0)
您可以使用os.Open()将 multipart.FileHeader 转换为 *( os.File) >
示例
val httpLoggingInterceptor = HttpLoggingInterceptor(OkHttpLogger()).apply {
level = HttpLoggingInterceptor.Level.BODY
}