[英]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.