BlobServiceClient class
يمثل BlobServiceClient عميلا لخدمة Azure Storage Blob مما يسمح لك بمعالجة حاويات الكائن الثنائي كبير الحجم.
- Extends
-
StorageClient
المنشئون
Blob |
إنشاء مثيل BlobServiceClient. |
Blob |
إنشاء مثيل BlobServiceClient. |
الخصائص الموروثة
account |
|
credential | مثل AnonymousCredential أو StorageSharedKeyCredential أو أي بيانات اعتماد من الحزمة |
url | قيمة سلسلة URL المشفرة. |
الأساليب
create |
إنشاء حاوية كائن ثنائي كبير الحجم. راجع https://docs.microsoft.com/en-us/rest/api/storageservices/create-container |
delete |
حذف حاوية كائن ثنائي كبير الحجم. |
find |
إرجاع مكرر غير متزامن قابل للتكبير للعثور على جميع الكائنات الثنائية كبيرة الحجم ذات العلامة المحددة ضمن الحساب المحدد. يقوم .byPage() بإرجاع مكرر غير متزامن لسرد الكائنات الثنائية كبيرة الحجم في الصفحات. راجع https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties مثال على استخدام
مثال على استخدام
مثال على استخدام
مثال على استخدام الترحيل مع علامة:
|
from |
إنشاء مثيل BlobServiceClient من سلسلة الاتصال. |
generate |
متوفر فقط ل BlobServiceClient الذي تم إنشاؤه باستخدام بيانات اعتماد مفتاح مشترك. إنشاء عنوان URI لتوقيع الوصول المشترك (SAS) لحساب Blob استنادا إلى خصائص العميل والمعلمات التي تم تمريرها. يتم توقيع SAS بواسطة بيانات اعتماد المفتاح المشترك للعميل. راجع https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas |
get |
ترجع عملية الحصول على معلومات الحساب اسم sku ونوع الحساب للحساب المحدد. تتوفر عملية الحصول على معلومات الحساب على إصدارات الخدمة بدءا من الإصدار 2018-03-28. راجع https://docs.microsoft.com/en-us/rest/api/storageservices/get-account-information |
get |
إنشاء كائن BlobBatchClient لإجراء عمليات الدفعة. راجع https://docs.microsoft.com/en-us/rest/api/storageservices/blob-batch |
get |
إنشاء كائن ContainerClient |
get |
يحصل على خصائص خدمة Blob لحساب التخزين، بما في ذلك خصائص قواعد Storage Analytics وCORS (مشاركة الموارد عبر المنشأ). راجع https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties |
get |
استرداد الإحصائيات المتعلقة بالنسخ المتماثل لخدمة Blob. يتوفر فقط على نقطة نهاية الموقع الثانوي عند تمكين النسخ المتماثل المتكرر جغرافيا للوصول للقراءة لحساب التخزين. راجع https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-stats |
get |
متوفر فقط عند استخدام مصادقة الرمز المميز للحامل (TokenCredential). استرداد مفتاح تفويض مستخدم لخدمة Blob. هذه عملية صالحة فقط عند استخدام مصادقة الرمز المميز للحامل. راجع https://docs.microsoft.com/en-us/rest/api/storageservices/get-user-delegation-key |
list |
إرجاع مكرر غير متزامن لسرد جميع الحاويات ضمن الحساب المحدد. يقوم .byPage() بإرجاع مكرر غير متزامن قابل للتكريب لسرد الحاويات في الصفحات. مثال على استخدام
مثال على استخدام
مثال على استخدام
مثال على استخدام الترحيل مع علامة:
|
set |
تعيين خصائص نقطة نهاية خدمة Blob لحساب التخزين، بما في ذلك خصائص Storage Analytics وقواعد CORS (مشاركة الموارد عبر المنشأ) وإعدادات الحذف المبدئي. راجع https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-service-properties |
undelete |
استعادة حاوية Blob المحذوفة مسبقا. تعمل واجهة برمجة التطبيقات هذه فقط إذا تم تمكين الحذف المبدئي للحاوية لحساب التخزين المقترن بالحاوية. |
تفاصيل المنشئ
BlobServiceClient(string, PipelineLike)
إنشاء مثيل BlobServiceClient.
new BlobServiceClient(url: string, pipeline: PipelineLike)
المعلمات
- url
-
string
سلسلة عميل تشير إلى خدمة كائن ثنائي كبير الحجم لتخزين Azure، مثل "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، مثل "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)
إنشاء حاوية كائن ثنائي كبير الحجم.
راجع https://docs.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)
حذف حاوية كائن ثنائي كبير الحجم.
function deleteContainer(containerName: string, options?: ContainerDeleteMethodOptions): Promise<ContainerDeleteResponse>
المعلمات
- containerName
-
string
اسم الحاوية المراد حذفها.
- options
- ContainerDeleteMethodOptions
خيارات لتكوين عملية حذف الحاوية.
المرتجعات
Promise<ContainerDeleteResponse>
استجابة حذف الحاوية.
findBlobsByTags(string, ServiceFindBlobByTagsOptions)
إرجاع مكرر غير متزامن قابل للتكبير للعثور على جميع الكائنات الثنائية كبيرة الحجم ذات العلامة المحددة ضمن الحساب المحدد.
يقوم .byPage() بإرجاع مكرر غير متزامن لسرد الكائنات الثنائية كبيرة الحجم في الصفحات.
راجع https://docs.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 الذي تم إنشاؤه باستخدام بيانات اعتماد مفتاح مشترك.
إنشاء عنوان URI لتوقيع الوصول المشترك (SAS) لحساب Blob استنادا إلى خصائص العميل والمعلمات التي تم تمريرها. يتم توقيع SAS بواسطة بيانات اعتماد المفتاح المشترك للعميل.
راجع https://docs.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 الذي تم إنشاؤه.
getAccountInfo(ServiceGetAccountInfoOptions)
ترجع عملية الحصول على معلومات الحساب اسم sku ونوع الحساب للحساب المحدد. تتوفر عملية الحصول على معلومات الحساب على إصدارات الخدمة بدءا من الإصدار 2018-03-28.
راجع https://docs.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://docs.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://docs.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://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-stats
function getStatistics(options?: ServiceGetStatisticsOptions): Promise<ServiceGetStatisticsResponse>
المعلمات
- options
- ServiceGetStatisticsOptions
خيارات لعملية الحصول على إحصائيات للخدمة.
المرتجعات
Promise<ServiceGetStatisticsResponse>
بيانات الاستجابة لعملية الحصول على إحصائيات الخدمة.
getUserDelegationKey(Date, Date, ServiceGetUserDelegationKeyOptions)
متوفر فقط عند استخدام مصادقة الرمز المميز للحامل (TokenCredential).
استرداد مفتاح تفويض مستخدم لخدمة Blob. هذه عملية صالحة فقط عند استخدام مصادقة الرمز المميز للحامل.
راجع https://docs.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://docs.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 المحذوفة مسبقا. تعمل واجهة برمجة التطبيقات هذه فقط إذا تم تمكين الحذف المبدئي للحاوية لحساب التخزين المقترن بالحاوية.
function undeleteContainer(deletedContainerName: string, deletedContainerVersion: string, options?: ServiceUndeleteContainerOptions): Promise<{ containerClient: ContainerClient, containerUndeleteResponse: ContainerUndeleteResponse }>
المعلمات
- deletedContainerName
-
string
اسم الحاوية المحذوفة مسبقا.
- deletedContainerVersion
-
string
إصدار الحاوية المحذوفة مسبقا، المستخدمة لتعريف الحاوية المحذوفة بشكل فريد.
- options
- ServiceUndeleteContainerOptions
خيارات لتكوين عملية استعادة الحاوية.
المرتجعات
Promise<{ containerClient: ContainerClient, containerUndeleteResponse: ContainerUndeleteResponse }>
استجابة حذف الحاوية.