[英]Upgrade from v10 to v12 - AzureSDK JS
我正在尝试将我的代码从 v10 升级到 v12,但不知道如何继续。 有人可以帮我解决吗?
import {
Aborter,
AnonymousCredential,
BlobUploadCommonResponse,
BlockBlobURL,
StorageURL,
uploadBrowserDataToBlockBlob
} from '@azure/storage-blob';
import { Upload } from '../types/models';
const CREDENTIALS = new AnonymousCredential();
const PIPELINE = StorageURL.newPipeline(CREDENTIALS);
export function uploadToAzure(upload: Upload, blob: Blob, options: {} = {}): Promise<BlobUploadCommonResponse> {
const blockBlobURL = new BlockBlobURL(upload.BlobURL, PIPELINE);
return uploadBrowserDataToBlockBlob(Aborter.none, blob, blockBlobURL, options);
}
这就是我所做的。
import {
Aborter,
AnonymousCredential,
BlobUploadCommonResponse,
BlobServiceClient
uploadBrowserData,
newPipeline
} from '@azure/storage-blob';
import { Upload } from '../types/models';
const CREDENTIALS = new AnonymousCredential();
const PIPELINE = newPipeline(CREDENTIALS);
export function uploadToAzure(upload: Upload, blob: Blob, options: {} = {}): Promise<BlobUploadCommonResponse> {
const blockBlobURL = new BlobServiceClient(upload.BlobURL, PIPELINE);
return uploadBrowserData(blob, options);
}
与旧代码相比,blockBlobURL 值从哪里传入? 谢谢。
请指教。
在 @azure/storage-blob SDK v12 中,您可以使用包含 SAS 令牌的 URL 直接实例化BlockBlobClient
。
import { BlockBlobClient } from "@azure/storage-blob";
export function uploadToAzure(blobUrl: string , blob: Blob) {
const client = new BlockBlobClient(blobUrl);
return client.uploadBrowserData(blob);
}
实例化BlockBlobClient
时,带有 SAS 令牌的 blob url 作为第一个参数提供。 不再需要传入AnonymousCredential
因为如果没有提供凭据对象,默认情况下将使用它。
文档: https : //docs.microsoft.com/en-us/javascript/api/@azure/storage-blob/blockblobclient?view=azure-node-latest#blockblobclient-string--storagesharedkeycredential---anonymouscredential--- tokencredential--storagepipelineoptions-
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.