这是我的方法头:
private Hashtable uploadItemResource(Hashtable htRequest,
int userId, HttpPostedFile file, SessionData sessionData) {
文件对象是从我的网站发布的文件。我正在尝试在另一个线程中将此文件发送到 AWS
PutObjectRequest titledRequest = new PutObjectRequest();
titledRequest
//other options left out
.WithInputStream(file.InputStream);
然后我s3Client.PutObject(titledRequest);
在一个线程中运行。
问题是我遇到了这个异常:
System.Net.WebException:请求被中止:请求被取消。---> System.IO.IOException:在写入所有字节之前无法关闭流。在 System.Net.ConnectStream.CloseInternal(Boolean internalCall, Boolean aborting) --- 内部异常堆栈跟踪结束 ---
我认为这是因为文件对象超出范围,并且在 AWS 调用仍在尝试读取它时尝试处理。
解决此问题的最佳方法是什么?提前转储文件内容并将其传递给 AWS 的最佳方法是什么?