Ale*_*ric 5 mobile amazon-s3 amazon-web-services reactjs react-native
我有以下代码;
const readFileAsStream = async (
fileUri,
encoding = "base64",
bufferSize = 4095
) => {
return new Promise((resolve, reject) => {
RNFetchBlob.fs
.readStream(fileUri, encoding, bufferSize)
.then(ifstream => {
ifstream.open();
resolve(ifstream);
})
.catch(err => {
reject(err);
});
});
};
// usage example
readFileAsStream(fileUri)
.then(stream => {
const upload = new Upload({
client: s3,
params: {
Bucket: S3_BUCKET_NAME,
Key: key,
Body: stream
},
partSize: 1024 * 1024 * 5 // minimum part size allowed by S3
});
upload.on("httpUploadProgress", progress => {
console.log(progress);
});
upload.done();
})
.catch(err => {
console.log(err);
});
Run Code Online (Sandbox Code Playgroud)
第一部分旨在将本地文件作为流读取,第二部分使用@aws-sdk/lib-storage 包将其上传到 S3。
我尝试将文件转换为缓冲区、blob 或流,但根据格式出现各种错误,例如“ReadableStream 未定义”、“Buffer 未定义”等。
这个包更多地用于网络,所以这里假设这些是包错误。有人在 React Native 中使用这个包将文件上传到 AWS S3 吗?
| 归档时间: |
|
| 查看次数: |
419 次 |
| 最近记录: |