如何解决未捕获承诺:RestError:文件上传到Blob存储后无法发送请求
我正在使用@ azure / storage-blob包将文件上传到Azure blob。
这是我将文件上传到Blob的代码:
public uploadFilesToAzureBlob(sasToken: string,file: any,id: string): Observable<any> {
const blobServiceClient = new BlobServiceClient(sasToken);
const containerClient = blobServiceClient.getContainerClient(id);
if (!containerClient.exists()) {
containerClient.create();
}
const client = containerClient.getBlockBlobClient(file.name);
// 10MB block size and 20 concurrency
const response = client.uploadBrowserData(file,{
blockSize: 10485760,concurrency: 20,blobHTTPHeaders: {
blobContentType: file.type
}
});
return from(response).pipe(map((res: any) => res),catchError(this.handleError)); }
虽然文件已成功上传,但在上传文件5-10秒后出现以下错误...
有什么建议吗?
错误#1
ERROR Error: Uncaught (in promise): RestError: Failed to send request to https://AzureBlobStorage/Files/FBEB2AE9-B14C-4C78-8F4A-0CE4FF9DF6F5/EDB62F71-6D1C-4347-B277-0D0BF98B9A1E?sv=2017-04-17&sr=c&sig=AnlnrIFDingda21arBI1mbA0yu2mqtAYehDEWNB5tA4%3D&se=2020-09-19T08%3A07%3A49Z&sp=rwdl&restype=container&_=9311731167285
RestError: Failed to send request to https://AzureBlobStorage/Files/FBEB2AE9-B14C-4C78-8F4A-0CE4FF9DF6F5/EDB62F71-6D1C-4347-B277-0D0BF98B9A1E?sv=2017-04-1
7&sr=c&sig=AnlnrIFDingda21arBI1mbA0yu2mqtAYehDEWNB5tA4%3D&se=2020-09-19T08%3A07%3A49Z&sp=rwdl&restype=container&_=9311731167285
at new RestError (restError.js:10)
at XMLHttpRequest. (xhrHttpClient.js:142)
at ZoneDelegate.invokeTask (zone-evergreen.js:399)
at Object.onInvokeTask (core.js:41344)
at ZoneDelegate.invokeTask (zone-evergreen.js:398)
at Zone.runTask (zone-evergreen.js:167)
at ZoneTask.invokeTask [as invoke] (zone-evergreen.js:480)
at invokeTask (zone-evergreen.js:1621)
at XMLHttpRequest.globalZoneAwareCallback (zone-evergreen.js:1647)
at resolvePromise (zone-evergreen.js:798)
at zone-evergreen.js:705
at rejected (tslib.es6.js:72)
at ZoneDelegate.invoke (zone-evergreen.js:364)
at Object.onInvoke (core.js:41366)
at ZoneDelegate.invoke (zone-evergreen.js:363)
at Zone.run (zone-evergreen.js:123)
at zone-evergreen.js:857
at ZoneDelegate.invokeTask (zone-evergreen.js:399)
at Object.onInvokeTask (core.js:41344)
错误#2
GET https:///Files/FBEB2AE9-B14C-4C78-8F4A-0CE4FF9DF6F5/EDB62F71-6D1C-4347-B277-0D0BF98B9A1E?sv=2017-04-17&sr=c&sig=AnlnrIFDingda21arBI1mbA0yu2mqtAYehDEWNB5tA4%3D&se=2020-09-19T08%3A07%3A49Z&sp=rwdl&restype=container&_=9311731167285 net::ERR_FAILED
解决方法
您是否尝试过为您的存储帐户配置 CORS?
https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob#cors
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。