我的環境:Windows 8.1,0.10.0的NodeJS要求2.30.0的NodeJS - 上傳使用fs.createReadStream,requestjs,流媒體和AWS S3 presigned URL拋出錯誤
這是一個基於亞馬遜SDK樣本是我的嘗試和requestjs
var params = {Bucket:'myprivateuniquebucket'
,Key:'mykey'
,Expires: 60};
var url = s3.getSignedUrl('putObject', params);
fs.createReadStream('pic.png').pipe(request.put(url));
和文檔,這是我
events.js:72
throw er; // Unhandled 'error' event
^
Error: read ECONNRESET
at errnoException (net.js:863:11)
at TCP.onread (net.js:524:19)
然而,而不是使用fs.createReadStream當我用fs.readFile像下面有史以來錯誤ything的工作只是罰款
fs.readFile('pic.png', function (err, data) {
request(
{ method: 'PUT'
, uri: url
, body: data
}
, function (error, response, body) {
}
);
});
注意我也跟着流例如這裏https://github.com/mikeal/request幾乎一字不差。
我很欣賞什麼是不正確的指針,因爲我想在多個地方使用流。
感謝您的解釋。是否有可能與流媒體結合使用亞馬遜多部分上傳API。我對此很陌生,只是想了解是否可行,然後再投入時間。 – Newbie
@Newbie你也可以使用流媒體,你只需要先查看文件的大小並設置適當的長度。 – loganfsmyth