BlobServiceClient class
يمثل BlobServiceClient عميلا لخدمة Azure Storage Blob مما يسمح لك بمعالجة حاويات الكائن الثنائي كبير الحجم.
- يمتد
-
StorageClient
المنشئون
Blob |
إنشاء مثيل BlobServiceClient. |
Blob |
إنشاء مثيل BlobServiceClient. |
الخصائص الموروثة
account |
|
credential | مثل AnonymousCredential أو StorageSharedKeyCredential أو أي بيانات اعتماد من حزمة |
url | قيمة سلسلة URL المرمزة. |
الأساليب
create |
إنشاء حاوية Blob. راجع https://learn.microsoft.com/en-us/rest/api/storageservices/create-container |
delete |
حذف حاوية Blob. |
find |
إرجاع مكرر غير متزامن قابل للتكبير للعثور على جميع الكائنات الثنائية كبيرة الحجم ذات العلامة المحددة ضمن الحساب المحدد. يقوم .byPage() بإرجاع مكرر غير متزامن لسرد الكائنات الثنائية كبيرة الحجم في الصفحات. راجع https://learn.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties مثال على استخدام بناء جملة
مثال على استخدام
مثال على استخدام
مثال على استخدام الترحيل مع علامة:
|
from |
إنشاء مثيل BlobServiceClient من سلسلة الاتصال. |
generate |
متوفر فقط ل BlobServiceClient الذي تم إنشاؤه باستخدام بيانات اعتماد مفتاح مشترك. ينشئ حساب Blob عنوان URI لتوقيع الوصول المشترك (SAS) استنادا إلى خصائص العميل والمعلمات التي تم تمريرها. يتم توقيع SAS بواسطة بيانات اعتماد المفتاح المشترك للعميل. راجع https://learn.microsoft.com/en-us/rest/api/storageservices/create-account-sas |
generate |
متوفر فقط ل BlobServiceClient الذي تم إنشاؤه باستخدام بيانات اعتماد مفتاح مشترك. إنشاء سلسلة لتسجيل الدخول إلى عنوان URI لتوقيع الوصول المشترك (SAS) لحساب Blob استنادا إلى خصائص العميل والمعلمات التي تم تمريرها. يتم توقيع SAS بواسطة بيانات اعتماد المفتاح المشترك للعميل. راجع https://learn.microsoft.com/en-us/rest/api/storageservices/create-account-sas |
get |
ترجع عملية الحصول على معلومات الحساب اسم sku ونوع الحساب للحساب المحدد. تتوفر عملية الحصول على معلومات الحساب على إصدارات الخدمة بدءا من الإصدار 2018-03-28. راجع https://learn.microsoft.com/en-us/rest/api/storageservices/get-account-information |
get |
إنشاء كائن BlobBatchClient لإجراء عمليات الدفعة. راجع https://learn.microsoft.com/en-us/rest/api/storageservices/blob-batch |
get |
إنشاء كائن containerClient |
get |
يحصل على خصائص خدمة Blob لحساب التخزين، بما في ذلك خصائص قواعد Storage Analytics وCORS (مشاركة الموارد عبر المنشأ). راجع https://learn.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties |
get |
استرداد الإحصائيات المتعلقة بالنسخ المتماثل لخدمة Blob. لا يتوفر إلا على نقطة نهاية الموقع الثانوي عند تمكين النسخ المتماثل المتكرر جغرافيا للوصول للقراءة لحساب التخزين. راجع https://learn.microsoft.com/en-us/rest/api/storageservices/get-blob-service-stats |
get |
متوفر فقط عند استخدام مصادقة الرمز المميز للحامل (TokenCredential). استرداد مفتاح تفويض مستخدم لخدمة Blob. هذه عملية صالحة فقط عند استخدام مصادقة الرمز المميز للحامل. راجع https://learn.microsoft.com/en-us/rest/api/storageservices/get-user-delegation-key |
list |
ترجع هذه الدالة مكرر غير متزامن لسرد كافة الحاويات ضمن الحساب المحدد. يقوم .byPage() بإرجاع مكرر غير متزامن قابل للتكريب لسرد الحاويات في الصفحات. مثال على استخدام بناء جملة
مثال على استخدام
مثال على استخدام
مثال على استخدام الترحيل مع علامة:
|
set |
تعيين خصائص نقطة نهاية خدمة Blob لحساب التخزين، بما في ذلك خصائص Storage Analytics وقواعد CORS (مشاركة الموارد عبر المنشأ) وإعدادات الحذف المبدئي. راجع https://learn.microsoft.com/en-us/rest/api/storageservices/set-blob-service-properties |
undelete |
استعادة حاوية Blob المحذوفة مسبقا. تعمل واجهة برمجة التطبيقات هذه فقط إذا تم تمكين Container Soft Delete لحساب التخزين المقترن بالحاوية. |
تفاصيل المنشئ
BlobServiceClient(string, PipelineLike)
إنشاء مثيل BlobServiceClient.
new BlobServiceClient(url: string, pipeline: PipelineLike)
المعلمات
- url
-
string
سلسلة عميل تشير إلى خدمة Azure Storage blob، مثل "https://myaccount.blob.core.windows.net". يمكنك إلحاق SAS إذا كنت تستخدم AnonymousCredential، مثل "https://myaccount.blob.core.windows.net?sasString".
- pipeline
- PipelineLike
استدعاء newPipeline() لإنشاء مسار افتراضي، أو توفير مسار مخصص.
BlobServiceClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)
إنشاء مثيل BlobServiceClient.
new BlobServiceClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)
المعلمات
- url
-
string
سلسلة عميل تشير إلى خدمة Azure Storage blob، مثل "https://myaccount.blob.core.windows.net". يمكنك إلحاق SAS إذا كنت تستخدم AnonymousCredential، مثل "https://myaccount.blob.core.windows.net?sasString".
- credential
-
StorageSharedKeyCredential | AnonymousCredential | TokenCredential
مثل AnonymousCredential أو StorageSharedKeyCredential أو أي بيانات اعتماد من حزمة @azure/identity
لمصادقة الطلبات إلى الخدمة. يمكنك أيضا توفير كائن ينفذ واجهة TokenCredential. إذا لم يتم تحديده، يتم استخدام AnonymousCredential.
- options
- StoragePipelineOptions
اختياري. خيارات لتكوين البنية الأساسية لبرنامج ربط العمليات التجارية HTTP.
مثال على استخدام DefaultAzureCredential من @azure/identity
:
const account = "<storage account name>";
const defaultAzureCredential = new DefaultAzureCredential();
const blobServiceClient = new BlobServiceClient(
`https://${account}.blob.core.windows.net`,
defaultAzureCredential
);
مثال على استخدام اسم/مفتاح حساب:
const account = "<storage account name>"
const sharedKeyCredential = new StorageSharedKeyCredential(account, "<account key>");
const blobServiceClient = new BlobServiceClient(
`https://${account}.blob.core.windows.net`,
sharedKeyCredential
);
تفاصيل الخاصية الموروثة
accountName
accountName: string
قيمة الخاصية
string
موروث من StorageClient.accountName
credential
مثل AnonymousCredential أو StorageSharedKeyCredential أو أي بيانات اعتماد من حزمة @azure/identity
لمصادقة الطلبات إلى الخدمة. يمكنك أيضا توفير كائن ينفذ واجهة TokenCredential. إذا لم يتم تحديده، يتم استخدام AnonymousCredential.
credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential
قيمة الخاصية
موروث من StorageClient.credential
url
قيمة سلسلة URL المرمزة.
url: string
قيمة الخاصية
string
موروث من StorageClient.url
تفاصيل الأسلوب
createContainer(string, ContainerCreateOptions)
إنشاء حاوية Blob.
راجع https://learn.microsoft.com/en-us/rest/api/storageservices/create-container
function createContainer(containerName: string, options?: ContainerCreateOptions): Promise<{ containerClient: ContainerClient, containerCreateResponse: ContainerCreateResponse }>
المعلمات
- containerName
-
string
اسم الحاوية المراد إنشاؤها.
- options
- ContainerCreateOptions
خيارات لتكوين عملية إنشاء الحاوية.
المرتجعات
Promise<{ containerClient: ContainerClient, containerCreateResponse: ContainerCreateResponse }>
استجابة إنشاء الحاوية وعميل الحاوية المقابل.
deleteContainer(string, ContainerDeleteMethodOptions)
حذف حاوية Blob.
function deleteContainer(containerName: string, options?: ContainerDeleteMethodOptions): Promise<ContainerDeleteResponse>
المعلمات
- containerName
-
string
اسم الحاوية المراد حذفها.
- options
- ContainerDeleteMethodOptions
خيارات لتكوين عملية حذف الحاوية.
المرتجعات
Promise<ContainerDeleteResponse>
استجابة حذف الحاوية.
findBlobsByTags(string, ServiceFindBlobByTagsOptions)
إرجاع مكرر غير متزامن قابل للتكبير للعثور على جميع الكائنات الثنائية كبيرة الحجم ذات العلامة المحددة ضمن الحساب المحدد.
يقوم .byPage() بإرجاع مكرر غير متزامن لسرد الكائنات الثنائية كبيرة الحجم في الصفحات.
راجع https://learn.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties
مثال على استخدام بناء جملة for await
:
let i = 1;
for await (const blob of blobServiceClient.findBlobsByTags("tagkey='tagvalue'")) {
console.log(`Blob ${i++}: ${container.name}`);
}
مثال على استخدام iter.next()
:
let i = 1;
const iter = blobServiceClient.findBlobsByTags("tagkey='tagvalue'");
let blobItem = await iter.next();
while (!blobItem.done) {
console.log(`Blob ${i++}: ${blobItem.value.name}`);
blobItem = await iter.next();
}
مثال على استخدام byPage()
:
// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of blobServiceClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 20 })) {
if (response.blobs) {
for (const blob of response.blobs) {
console.log(`Blob ${i++}: ${blob.name}`);
}
}
}
مثال على استخدام الترحيل مع علامة:
let i = 1;
let iterator = blobServiceClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;
// Prints 2 blob names
if (response.blobs) {
for (const blob of response.blobs) {
console.log(`Blob ${i++}: ${blob.name}`);
}
}
// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = blobServiceClient
.findBlobsByTags("tagkey='tagvalue'")
.byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;
// Prints blob names
if (response.blobs) {
for (const blob of response.blobs) {
console.log(`Blob ${i++}: ${blob.name}`);
}
}
function findBlobsByTags(tagFilterSqlExpression: string, options?: ServiceFindBlobByTagsOptions): PagedAsyncIterableIterator<FilterBlobItem, ServiceFindBlobsByTagsSegmentResponse, PageSettings>
المعلمات
- tagFilterSqlExpression
-
string
المعلمة where تمكن المتصل من الاستعلام عن الكائنات الثنائية كبيرة الحجم التي تتطابق علاماتها مع تعبير معين. يجب تقييم التعبير المحدد إلى صحيح لكي يتم إرجاع كائن ثنائي كبير الحجم في النتائج. تحدد قاعدة بناء جملة عامل التصفية [OData - ABNF] التدقيق النحوي الرسمي لقيمة معلمة الاستعلام where؛ ومع ذلك، يتم دعم مجموعة فرعية فقط من بناء جملة عامل تصفية OData في خدمة Blob.
- options
- ServiceFindBlobByTagsOptions
خيارات للعثور على الكائنات الثنائية كبيرة الحجم حسب العلامات.
المرتجعات
fromConnectionString(string, StoragePipelineOptions)
إنشاء مثيل BlobServiceClient من سلسلة الاتصال.
static function fromConnectionString(connectionString: string, options?: StoragePipelineOptions): BlobServiceClient
المعلمات
- connectionString
-
string
سلسلة اتصال الحساب أو سلسلة اتصال SAS لحساب تخزين Azure.
[ ملاحظة - يمكن استخدام سلسلة اتصال الحساب فقط في وقت تشغيل NODE.JS. ] مثال سلسلة اتصال الحساب -
DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net
مثال سلسلة اتصال SAS - BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString
- options
- StoragePipelineOptions
اختياري. خيارات لتكوين البنية الأساسية لبرنامج ربط العمليات التجارية HTTP.
المرتجعات
generateAccountSasUrl(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)
متوفر فقط ل BlobServiceClient الذي تم إنشاؤه باستخدام بيانات اعتماد مفتاح مشترك.
ينشئ حساب Blob عنوان URI لتوقيع الوصول المشترك (SAS) استنادا إلى خصائص العميل والمعلمات التي تم تمريرها. يتم توقيع SAS بواسطة بيانات اعتماد المفتاح المشترك للعميل.
راجع https://learn.microsoft.com/en-us/rest/api/storageservices/create-account-sas
function generateAccountSasUrl(expiresOn?: Date, permissions?: AccountSASPermissions, resourceTypes?: string, options?: ServiceGenerateAccountSasUrlOptions): string
المعلمات
- expiresOn
-
Date
اختياري. الوقت الذي يصبح فيه توقيع الوصول المشترك غير صالح. افتراضي إلى ساعة لاحقة إذا لم يتم توفيرها.
- permissions
- AccountSASPermissions
تحديد قائمة الأذونات التي سيتم اقترانها ب SAS.
- resourceTypes
-
string
تحديد أنواع الموارد المقترنة بتوقيع الوصول المشترك.
المعلمات الاختيارية.
المرتجعات
string
حساب SAS URI يتكون من URI للمورد الذي يمثله هذا العميل، متبوعا بالرمز المميز SAS الذي تم إنشاؤه.
generateSasStringToSign(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)
متوفر فقط ل BlobServiceClient الذي تم إنشاؤه باستخدام بيانات اعتماد مفتاح مشترك.
إنشاء سلسلة لتسجيل الدخول إلى عنوان URI لتوقيع الوصول المشترك (SAS) لحساب Blob استنادا إلى خصائص العميل والمعلمات التي تم تمريرها. يتم توقيع SAS بواسطة بيانات اعتماد المفتاح المشترك للعميل.
راجع https://learn.microsoft.com/en-us/rest/api/storageservices/create-account-sas
function generateSasStringToSign(expiresOn?: Date, permissions?: AccountSASPermissions, resourceTypes?: string, options?: ServiceGenerateAccountSasUrlOptions): string
المعلمات
- expiresOn
-
Date
اختياري. الوقت الذي يصبح فيه توقيع الوصول المشترك غير صالح. افتراضي إلى ساعة لاحقة إذا لم يتم توفيرها.
- permissions
- AccountSASPermissions
تحديد قائمة الأذونات التي سيتم اقترانها ب SAS.
- resourceTypes
-
string
تحديد أنواع الموارد المقترنة بتوقيع الوصول المشترك.
المعلمات الاختيارية.
المرتجعات
string
حساب SAS URI يتكون من URI للمورد الذي يمثله هذا العميل، متبوعا بالرمز المميز SAS الذي تم إنشاؤه.
getAccountInfo(ServiceGetAccountInfoOptions)
ترجع عملية الحصول على معلومات الحساب اسم sku ونوع الحساب للحساب المحدد. تتوفر عملية الحصول على معلومات الحساب على إصدارات الخدمة بدءا من الإصدار 2018-03-28.
راجع https://learn.microsoft.com/en-us/rest/api/storageservices/get-account-information
function getAccountInfo(options?: ServiceGetAccountInfoOptions): Promise<ServiceGetAccountInfoResponse>
المعلمات
- options
- ServiceGetAccountInfoOptions
خيارات لعملية Service Get Account Info.
المرتجعات
Promise<ServiceGetAccountInfoResponse>
بيانات الاستجابة لعملية Service Get Account Info.
getBlobBatchClient()
إنشاء كائن BlobBatchClient لإجراء عمليات الدفعة.
راجع https://learn.microsoft.com/en-us/rest/api/storageservices/blob-batch
function getBlobBatchClient(): BlobBatchClient
المرتجعات
كائن BlobBatchClient جديد لهذه الخدمة.
getContainerClient(string)
إنشاء كائن containerClient
function getContainerClient(containerName: string): ContainerClient
المعلمات
- containerName
-
string
اسم الحاوية
المرتجعات
كائن ContainerClient جديد لاسم الحاوية المحدد.
مثال على الاستخدام:
const containerClient = blobServiceClient.getContainerClient("<container name>");
getProperties(ServiceGetPropertiesOptions)
يحصل على خصائص خدمة Blob لحساب التخزين، بما في ذلك خصائص قواعد Storage Analytics وCORS (مشاركة الموارد عبر المنشأ).
راجع https://learn.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties
function getProperties(options?: ServiceGetPropertiesOptions): Promise<ServiceGetPropertiesResponse>
المعلمات
- options
- ServiceGetPropertiesOptions
خيارات لعملية الحصول على خصائص الخدمة.
المرتجعات
Promise<ServiceGetPropertiesResponse>
بيانات الاستجابة لعملية Service Get Properties.
getStatistics(ServiceGetStatisticsOptions)
استرداد الإحصائيات المتعلقة بالنسخ المتماثل لخدمة Blob. لا يتوفر إلا على نقطة نهاية الموقع الثانوي عند تمكين النسخ المتماثل المتكرر جغرافيا للوصول للقراءة لحساب التخزين.
راجع https://learn.microsoft.com/en-us/rest/api/storageservices/get-blob-service-stats
function getStatistics(options?: ServiceGetStatisticsOptions): Promise<ServiceGetStatisticsResponse>
المعلمات
- options
- ServiceGetStatisticsOptions
خيارات لعملية Service Get Statistics.
المرتجعات
Promise<ServiceGetStatisticsResponse>
بيانات الاستجابة لعملية Service Get Statistics.
getUserDelegationKey(Date, Date, ServiceGetUserDelegationKeyOptions)
متوفر فقط عند استخدام مصادقة الرمز المميز للحامل (TokenCredential).
استرداد مفتاح تفويض مستخدم لخدمة Blob. هذه عملية صالحة فقط عند استخدام مصادقة الرمز المميز للحامل.
راجع https://learn.microsoft.com/en-us/rest/api/storageservices/get-user-delegation-key
function getUserDelegationKey(startsOn: Date, expiresOn: Date, options?: ServiceGetUserDelegationKeyOptions): Promise<ServiceGetUserDelegationKeyResponse>
المعلمات
- startsOn
-
Date
وقت البدء لتفويض المستخدم SAS. يجب أن يكون في غضون 7 أيام من الوقت الحالي
- expiresOn
-
Date
وقت انتهاء توقيعات الوصول المشترك لتفويض المستخدم. يجب أن يكون في غضون 7 أيام من الوقت الحالي
المرتجعات
Promise<ServiceGetUserDelegationKeyResponse>
listContainers(ServiceListContainersOptions)
ترجع هذه الدالة مكرر غير متزامن لسرد كافة الحاويات ضمن الحساب المحدد.
يقوم .byPage() بإرجاع مكرر غير متزامن قابل للتكريب لسرد الحاويات في الصفحات.
مثال على استخدام بناء جملة for await
:
let i = 1;
for await (const container of blobServiceClient.listContainers()) {
console.log(`Container ${i++}: ${container.name}`);
}
مثال على استخدام iter.next()
:
let i = 1;
const iter = blobServiceClient.listContainers();
let containerItem = await iter.next();
while (!containerItem.done) {
console.log(`Container ${i++}: ${containerItem.value.name}`);
containerItem = await iter.next();
}
مثال على استخدام byPage()
:
// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of blobServiceClient.listContainers().byPage({ maxPageSize: 20 })) {
if (response.containerItems) {
for (const container of response.containerItems) {
console.log(`Container ${i++}: ${container.name}`);
}
}
}
مثال على استخدام الترحيل مع علامة:
let i = 1;
let iterator = blobServiceClient.listContainers().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;
// Prints 2 container names
if (response.containerItems) {
for (const container of response.containerItems) {
console.log(`Container ${i++}: ${container.name}`);
}
}
// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = blobServiceClient
.listContainers()
.byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;
// Prints 10 container names
if (response.containerItems) {
for (const container of response.containerItems) {
console.log(`Container ${i++}: ${container.name}`);
}
}
function listContainers(options?: ServiceListContainersOptions): PagedAsyncIterableIterator<ContainerItem, ServiceListContainersSegmentResponse, PageSettings>
المعلمات
- options
- ServiceListContainersOptions
خيارات لسرد الحاويات.
المرتجعات
asyncIterableIterator يدعم الترحيل.
setProperties(BlobServiceProperties, ServiceSetPropertiesOptions)
تعيين خصائص نقطة نهاية خدمة Blob لحساب التخزين، بما في ذلك خصائص Storage Analytics وقواعد CORS (مشاركة الموارد عبر المنشأ) وإعدادات الحذف المبدئي.
راجع https://learn.microsoft.com/en-us/rest/api/storageservices/set-blob-service-properties
function setProperties(properties: BlobServiceProperties, options?: ServiceSetPropertiesOptions): Promise<ServiceSetPropertiesResponse>
المعلمات
- properties
- BlobServiceProperties
- options
- ServiceSetPropertiesOptions
خيارات لعملية خصائص مجموعة الخدمة.
المرتجعات
Promise<ServiceSetPropertiesResponse>
بيانات الاستجابة لعملية خصائص مجموعة الخدمة.
undeleteContainer(string, string, ServiceUndeleteContainerOptions)
استعادة حاوية Blob المحذوفة مسبقا. تعمل واجهة برمجة التطبيقات هذه فقط إذا تم تمكين Container Soft Delete لحساب التخزين المقترن بالحاوية.
function undeleteContainer(deletedContainerName: string, deletedContainerVersion: string, options?: ServiceUndeleteContainerOptions): Promise<{ containerClient: ContainerClient, containerUndeleteResponse: ContainerUndeleteResponse }>
المعلمات
- deletedContainerName
-
string
اسم الحاوية المحذوفة مسبقا.
- deletedContainerVersion
-
string
إصدار الحاوية المحذوفة مسبقا، المستخدمة لتعريف الحاوية المحذوفة بشكل فريد.
- options
- ServiceUndeleteContainerOptions
خيارات لتكوين عملية استعادة الحاوية.
المرتجعات
Promise<{ containerClient: ContainerClient, containerUndeleteResponse: ContainerUndeleteResponse }>
استجابة حذف الحاوية.