ContainerClient class
Un ContainerClient représente une URL vers le conteneur stockage Azure qui vous permet de manipuler ses objets blob.
- Extends
Constructeurs
Container |
Crée une instance de ContainerClient. Cette méthode accepte une URL pointant vers un conteneur. La chaîne d’URL encodée ne sera PAS échappée deux fois. Seuls les caractères spéciaux du chemin d’URL seront placés dans une séquence d’échappement. Si un nom d’objet blob inclut ? ou %, le nom de l’objet blob doit être encodé dans l’URL. |
Container |
Crée une instance de ContainerClient. Cette méthode accepte une URL pointant vers un conteneur. La chaîne d’URL encodée ne sera PAS échappée deux fois. Seuls les caractères spéciaux du chemin d’URL seront placés dans une séquence d’échappement. Si un nom d’objet blob inclut ? ou %, le nom de l’objet blob doit être encodé dans l’URL. |
Container |
Crée une instance de ContainerClient. |
Propriétés
account |
|
container |
nom du conteneur. |
credential | Telles que AnonymousCredential, StorageSharedKeyCredential ou toutes les informations d’identification du |
url | Valeur de chaîne d’URL encodée. |
Méthodes
create(Container |
Crée un conteneur sous le compte spécifié. Si un conteneur portant le même nom existe déjà, l'opération échoue. |
create |
Crée un conteneur sous le compte spécifié. Si le conteneur portant le même nom existe déjà, il n’est pas modifié. |
delete(Container |
Marque le conteneur spécifié pour la suppression. Le conteneur et les objets blob contenus dans ce conteneur sont supprimés lors du garbage collection. |
delete |
Marque l’objet blob ou l’instantané spécifié pour suppression. L'objet blob est ensuite supprimé lors du garbage collection. Notez que pour supprimer un objet blob, vous devez supprimer tous ses instantanés. Vous pouvez supprimer les deux en même temps avec l’opération Supprimer l’objet blob. |
delete |
Marque le conteneur spécifié pour suppression s’il existe. Le conteneur et les objets blob contenus dans ce conteneur sont supprimés lors du garbage collection. |
exists(Container |
Retourne true si la ressource de conteneur Azure représentée par ce client existe ; false dans le cas contraire. REMARQUE : utilisez cette fonction avec précaution, car un conteneur existant peut être supprimé par d’autres clients ou applications. Inversement, de nouveaux conteneurs portant le même nom peuvent être ajoutés par d’autres clients ou applications une fois cette fonction terminée. |
generate |
Disponible uniquement pour ContainerClient construit avec des informations d’identification de clé partagée. Génère un URI de signature d’accès partagé (SAS) du service conteneur d’objets blob en fonction des propriétés clientes et des paramètres transmis. La signature SAS est signée par les informations d’identification de clé partagée du client. |
get |
Obtient les autorisations pour le conteneur spécifié. Les autorisations indiquent si les données de conteneur sont accessibles publiquement. AVERTISSEMENT : JavaScript Date risque de perdre la précision lors de l’analyse des chaînes startsOn et expiresOn. Par exemple, new Date(« 2018-12-31T03:44:23.8827891Z »).toISOString() obtient « 2018-12-31T03:44:23.882Z ». |
get |
Crée un <xref:AppendBlobClient> |
get |
Crée un objet BlobBatchClient pour effectuer des opérations par lot. |
get |
Crée un <xref:BlobClient> |
get |
Obtenez un <xref:BlobLeaseClient> qui gère les baux sur le conteneur. |
get |
Crée un <xref:BlockBlobClient> |
get |
Crée un <xref:PageBlobClient> |
get |
Retourne toutes les métadonnées et propriétés système définies par l’utilisateur pour le conteneur spécifié. Les données renvoyées ne comprennent pas la liste d'objets blob du conteneur. |
list |
Retourne un itérateur itérable asynchrone pour répertorier tous les objets blob par hiérarchie. sous le compte spécifié. .byPage() retourne un itérateur itérable asynchrone pour répertorier les objets blob par hiérarchie dans les pages. Exemple utilisant la
Exemple utilisant
Exemple utilisant
Exemple d’utilisation de la pagination avec une taille de page maximale :
|
list |
Retourne un itérateur itérable asynchrone pour répertorier tous les objets blob sous le compte spécifié. .byPage() retourne un itérateur itérable asynchrone pour répertorier les objets blob dans les pages. Exemple utilisant la
Exemple utilisant
Exemple utilisant
Exemple d’utilisation de la pagination avec un marqueur :
|
set |
Définit les autorisations pour le conteneur spécifié. Les autorisations indiquent si les objets blob dans un conteneur sont accessibles publiquement. Lorsque vous définissez des autorisations pour un conteneur, les autorisations existantes sont remplacées. Si aucun accès ou containerAcl n’est fourni, l’ACL de conteneur existante est supprimée. Lorsque vous établissez une stratégie d'accès stockée sur un conteneur, son application peut prendre trente secondes. Au cours de cet intervalle, une signature d'accès partagé associée à la stratégie d'accès stockée échoue avec le code d'état 403 (Interdit), jusqu'à ce que la stratégie d'accès devienne active. |
set |
Définit une ou plusieurs paires nom-valeur définies par l’utilisateur pour le conteneur spécifié. Si aucune option n’est fournie ou si aucune métadonnées n’est définie dans le paramètre , les métadonnées du conteneur sont supprimées. |
upload |
Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant. La mise à jour d'un objet blob de blocs existant remplace toutes les métadonnées existantes de l'objet blob. Les mises à jour partielles ne sont pas prises en charge ; le contenu de l’objet blob existant est remplacé par le nouveau contenu. Pour effectuer une mise à jour partielle d’un objet blob de blocs, utilisez <xref:BlockBlobClient.stageBlock> et <xref:BlockBlobClient.commitBlockList>. Il s’agit d’une méthode de chargement non parallèle. Utilisez <xref:BlockBlobClient.uploadFile>ou <xref:BlockBlobClient.uploadStream><xref:BlockBlobClient.uploadBrowserData> pour de meilleures performances avec le chargement concurrentiel. |
Détails du constructeur
ContainerClient(string, PipelineLike)
Crée une instance de ContainerClient. Cette méthode accepte une URL pointant vers un conteneur. La chaîne d’URL encodée ne sera PAS échappée deux fois. Seuls les caractères spéciaux du chemin d’URL seront placés dans une séquence d’échappement. Si un nom d’objet blob inclut ? ou %, le nom de l’objet blob doit être encodé dans l’URL.
new ContainerClient(url: string, pipeline: PipelineLike)
Paramètres
- url
-
string
Chaîne d’URL pointant vers le conteneur Stockage Azure, telle que « https://myaccount.blob.core.windows.net/mycontainer". Vous pouvez ajouter une signature d’accès partagé si vous utilisez AnonymousCredential, par exemple «https://myaccount.blob.core.windows.net/mycontainer?sasString" ; ».
- pipeline
- PipelineLike
Appelez newPipeline() pour créer un pipeline par défaut ou fournissez un pipeline personnalisé.
ContainerClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)
Crée une instance de ContainerClient. Cette méthode accepte une URL pointant vers un conteneur. La chaîne d’URL encodée ne sera PAS échappée deux fois. Seuls les caractères spéciaux du chemin d’URL seront placés dans une séquence d’échappement. Si un nom d’objet blob inclut ? ou %, le nom de l’objet blob doit être encodé dans l’URL.
new ContainerClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)
Paramètres
- url
-
string
Chaîne d’URL pointant vers le conteneur Stockage Azure, telle que « https://myaccount.blob.core.windows.net/mycontainer". Vous pouvez ajouter une signature d’accès partagé si vous utilisez AnonymousCredential, par exemple «https://myaccount.blob.core.windows.net/mycontainer?sasString" ; ».
- credential
-
StorageSharedKeyCredential | AnonymousCredential | TokenCredential
Par exemple, AnonymousCredential, StorageSharedKeyCredential ou toutes les informations d’identification du @azure/identity
package pour authentifier les demandes adressées au service. Vous pouvez également fournir un objet qui implémente l’interface TokenCredential. S’il n’est pas spécifié, AnonymousCredential est utilisé.
- options
- StoragePipelineOptions
facultatif. Options pour configurer le pipeline HTTP.
ContainerClient(string, string, StoragePipelineOptions)
Crée une instance de ContainerClient.
new ContainerClient(connectionString: string, containerName: string, options?: StoragePipelineOptions)
Paramètres
- connectionString
-
string
Chaîne de connexion de compte ou chaîne de connexion SAP d’un compte de stockage Azure.
[ Remarque : la chaîne de connexion de compte ne peut être utilisée que dans NODE.JS runtime. ] Exemple de chaîne de connexion de compte -DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net
Exemple de chaîne de connexion 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
- containerName
-
string
Nom du conteneur.
- options
- StoragePipelineOptions
facultatif. Options pour configurer le pipeline HTTP.
Détails de la propriété
accountName
accountName: string
Valeur de propriété
string
containerName
nom du conteneur.
string containerName
Valeur de propriété
string
credential
Telles que AnonymousCredential, StorageSharedKeyCredential ou toutes les informations d’identification du @azure/identity
package pour authentifier les demandes adressées au service. Vous pouvez également fournir un objet qui implémente l’interface TokenCredential. S’il n’est pas spécifié, AnonymousCredential est utilisé.
credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential
Valeur de propriété
StorageSharedKeyCredential | AnonymousCredential | TokenCredential
url
Valeur de chaîne d’URL encodée.
url: string
Valeur de propriété
string
Détails de la méthode
create(ContainerCreateOptions)
Crée un conteneur sous le compte spécifié. Si un conteneur portant le même nom existe déjà, l'opération échoue.
function create(options?: ContainerCreateOptions)
Paramètres
- options
- ContainerCreateOptions
Options de l’opération de création de conteneur.
Exemple d'utilisation :
const containerClient = blobServiceClient.getContainerClient("<container name>");
const createContainerResponse = await containerClient.create();
console.log("Container was created successfully", createContainerResponse.requestId);
Retours
Promise<ContainerCreateResponse>
createIfNotExists(ContainerCreateOptions)
Crée un conteneur sous le compte spécifié. Si le conteneur portant le même nom existe déjà, il n’est pas modifié.
function createIfNotExists(options?: ContainerCreateOptions)
Paramètres
- options
- ContainerCreateOptions
Retours
Promise<ContainerCreateIfNotExistsResponse>
delete(ContainerDeleteMethodOptions)
Marque le conteneur spécifié pour la suppression. Le conteneur et les objets blob contenus dans ce conteneur sont supprimés lors du garbage collection.
function delete(options?: ContainerDeleteMethodOptions)
Paramètres
- options
- ContainerDeleteMethodOptions
Options de l’opération de suppression de conteneur.
Retours
Promise<ContainerDeleteResponse>
deleteBlob(string, ContainerDeleteBlobOptions)
Marque l’objet blob ou l’instantané spécifié pour suppression. L'objet blob est ensuite supprimé lors du garbage collection. Notez que pour supprimer un objet blob, vous devez supprimer tous ses instantanés. Vous pouvez supprimer les deux en même temps avec l’opération Supprimer l’objet blob.
function deleteBlob(blobName: string, options?: ContainerDeleteBlobOptions)
Paramètres
- blobName
-
string
- options
- ContainerDeleteBlobOptions
Options de l’opération De suppression d’objets blob.
Retours
Promise<BlobDeleteResponse>
Bloquer les données de réponse à la suppression d’objets blob.
deleteIfExists(ContainerDeleteMethodOptions)
Marque le conteneur spécifié pour suppression s’il existe. Le conteneur et les objets blob contenus dans ce conteneur sont supprimés lors du garbage collection.
function deleteIfExists(options?: ContainerDeleteMethodOptions)
Paramètres
- options
- ContainerDeleteMethodOptions
Options de l’opération de suppression de conteneur.
Retours
Promise<ContainerDeleteIfExistsResponse>
exists(ContainerExistsOptions)
Retourne true si la ressource de conteneur Azure représentée par ce client existe ; false dans le cas contraire. REMARQUE : utilisez cette fonction avec précaution, car un conteneur existant peut être supprimé par d’autres clients ou applications. Inversement, de nouveaux conteneurs portant le même nom peuvent être ajoutés par d’autres clients ou applications une fois cette fonction terminée.
function exists(options?: ContainerExistsOptions)
Paramètres
- options
- ContainerExistsOptions
Retours
Promise<boolean>
generateSasUrl(ContainerGenerateSasUrlOptions)
Disponible uniquement pour ContainerClient construit avec des informations d’identification de clé partagée. Génère un URI de signature d’accès partagé (SAS) du service conteneur d’objets blob en fonction des propriétés clientes et des paramètres transmis. La signature SAS est signée par les informations d’identification de clé partagée du client.
function generateSasUrl(options: ContainerGenerateSasUrlOptions)
Paramètres
- options
- ContainerGenerateSasUrlOptions
Paramètres facultatifs.
Retours
Promise<string>
URI SAP constitué de l’URI de la ressource représentée par ce client, suivi du jeton SAP généré.
getAccessPolicy(ContainerGetAccessPolicyOptions)
Obtient les autorisations pour le conteneur spécifié. Les autorisations indiquent si les données de conteneur sont accessibles publiquement. AVERTISSEMENT : JavaScript Date risque de perdre la précision lors de l’analyse des chaînes startsOn et expiresOn. Par exemple, new Date(« 2018-12-31T03:44:23.8827891Z »).toISOString() obtient « 2018-12-31T03:44:23.882Z ».
function getAccessPolicy(options?: ContainerGetAccessPolicyOptions)
Paramètres
- options
- ContainerGetAccessPolicyOptions
Options de l’opération Container Get Access Policy.
Retours
Promise<ContainerGetAccessPolicyResponse>
getAppendBlobClient(string)
Crée un <xref:AppendBlobClient>
function getAppendBlobClient(blobName: string)
Paramètres
- blobName
-
string
Nom d’objet blob d’ajout
Retours
getBlobBatchClient()
Crée un objet BlobBatchClient pour effectuer des opérations par lot.
function getBlobBatchClient()
Retours
Nouvel objet BlobBatchClient pour ce conteneur.
getBlobClient(string)
Crée un <xref:BlobClient>
function getBlobClient(blobName: string)
Paramètres
- blobName
-
string
Nom d’objet blob
Retours
Nouvel objet BlobClient pour le nom d’objet blob donné.
getBlobLeaseClient(string)
Obtenez un <xref:BlobLeaseClient> qui gère les baux sur le conteneur.
function getBlobLeaseClient(proposeLeaseId?: string)
Paramètres
- proposeLeaseId
-
string
ID de bail initial proposé.
Retours
Nouvel objet BlobLeaseClient pour la gestion des baux sur le conteneur.
getBlockBlobClient(string)
Crée un <xref:BlockBlobClient>
function getBlockBlobClient(blobName: string)
Paramètres
- blobName
-
string
Nom d’un objet blob de blocs
Exemple d'utilisation :
const content = "Hello world!";
const blockBlobClient = containerClient.getBlockBlobClient("<blob name>");
const uploadBlobResponse = await blockBlobClient.upload(content, content.length);
Retours
getPageBlobClient(string)
Crée un <xref:PageBlobClient>
function getPageBlobClient(blobName: string)
Paramètres
- blobName
-
string
Nom de l’objet blob de pages
Retours
getProperties(ContainerGetPropertiesOptions)
Retourne toutes les métadonnées et propriétés système définies par l’utilisateur pour le conteneur spécifié. Les données renvoyées ne comprennent pas la liste d'objets blob du conteneur.
function getProperties(options?: ContainerGetPropertiesOptions)
Paramètres
- options
- ContainerGetPropertiesOptions
Options de l’opération Container Get Properties.
Retours
Promise<ContainerGetPropertiesResponse>
listBlobsByHierarchy(string, ContainerListBlobsOptions)
Retourne un itérateur itérable asynchrone pour répertorier tous les objets blob par hiérarchie. sous le compte spécifié. .byPage() retourne un itérateur itérable asynchrone pour répertorier les objets blob par hiérarchie dans les pages.
Exemple utilisant la for await
syntaxe :
for await (const item of containerClient.listBlobsByHierarchy("/")) {
if (item.kind === "prefix") {
console.log(`\tBlobPrefix: ${item.name}`);
} else {
console.log(`\tBlobItem: name - ${item.name}, last modified - ${item.properties.lastModified}`);
}
}
Exemple utilisant iter.next()
:
let iter = containerClient.listBlobsByHierarchy("/", { prefix: "prefix1/" });
let entity = await iter.next();
while (!entity.done) {
let item = entity.value;
if (item.kind === "prefix") {
console.log(`\tBlobPrefix: ${item.name}`);
} else {
console.log(`\tBlobItem: name - ${item.name}, last modified - ${item.properties.lastModified}`);
}
entity = await iter.next();
}
Exemple utilisant byPage()
:
console.log("Listing blobs by hierarchy by page");
for await (const response of containerClient.listBlobsByHierarchy("/").byPage()) {
const segment = response.segment;
if (segment.blobPrefixes) {
for (const prefix of segment.blobPrefixes) {
console.log(`\tBlobPrefix: ${prefix.name}`);
}
}
for (const blob of response.segment.blobItems) {
console.log(`\tBlobItem: name - ${blob.name}, last modified - ${blob.properties.lastModified}`);
}
}
Exemple d’utilisation de la pagination avec une taille de page maximale :
console.log("Listing blobs by hierarchy by page, specifying a prefix and a max page size");
let i = 1;
for await (const response of containerClient.listBlobsByHierarchy("/", { prefix: "prefix2/sub1/"}).byPage({ maxPageSize: 2 })) {
console.log(`Page ${i++}`);
const segment = response.segment;
if (segment.blobPrefixes) {
for (const prefix of segment.blobPrefixes) {
console.log(`\tBlobPrefix: ${prefix.name}`);
}
}
for (const blob of response.segment.blobItems) {
console.log(`\tBlobItem: name - ${blob.name}, last modified - ${blob.properties.lastModified}`);
}
}
function listBlobsByHierarchy(delimiter: string, options?: ContainerListBlobsOptions)
Paramètres
- delimiter
-
string
Caractère ou chaîne utilisé pour définir la hiérarchie virtuelle
- options
- ContainerListBlobsOptions
Options de l’opération de liste des objets blob.
Retours
PagedAsyncIterableIterator<Object & BlobPrefix | Object & BlobItem, ContainerListBlobHierarchySegmentResponse>
listBlobsFlat(ContainerListBlobsOptions)
Retourne un itérateur itérable asynchrone pour répertorier tous les objets blob sous le compte spécifié. .byPage() retourne un itérateur itérable asynchrone pour répertorier les objets blob dans les pages.
Exemple utilisant la for await
syntaxe :
// Get the containerClient before you run these snippets,
// Can be obtained from `blobServiceClient.getContainerClient("<your-container-name>");`
let i = 1;
for await (const blob of containerClient.listBlobsFlat()) {
console.log(`Blob ${i++}: ${blob.name}`);
}
Exemple utilisant iter.next()
:
let i = 1;
let iter = containerClient.listBlobsFlat();
let blobItem = await iter.next();
while (!blobItem.done) {
console.log(`Blob ${i++}: ${blobItem.value.name}`);
blobItem = await iter.next();
}
Exemple utilisant byPage()
:
// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of containerClient.listBlobsFlat().byPage({ maxPageSize: 20 })) {
for (const blob of response.segment.blobItems) {
console.log(`Blob ${i++}: ${blob.name}`);
}
}
Exemple d’utilisation de la pagination avec un marqueur :
let i = 1;
let iterator = containerClient.listBlobsFlat().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;
// Prints 2 blob names
for (const blob of response.segment.blobItems) {
console.log(`Blob ${i++}: ${blob.name}`);
}
// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = containerClient.listBlobsFlat().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;
// Prints 10 blob names
for (const blob of response.segment.blobItems) {
console.log(`Blob ${i++}: ${blob.name}`);
}
function listBlobsFlat(options?: ContainerListBlobsOptions)
Paramètres
- options
- ContainerListBlobsOptions
Options de liste des objets blob.
Retours
PagedAsyncIterableIterator<BlobItem, ContainerListBlobFlatSegmentResponse>
AsyncIterableIterator qui prend en charge la pagination.
setAccessPolicy(PublicAccessType, SignedIdentifier[], ContainerSetAccessPolicyOptions)
Définit les autorisations pour le conteneur spécifié. Les autorisations indiquent si les objets blob dans un conteneur sont accessibles publiquement. Lorsque vous définissez des autorisations pour un conteneur, les autorisations existantes sont remplacées. Si aucun accès ou containerAcl n’est fourni, l’ACL de conteneur existante est supprimée.
Lorsque vous établissez une stratégie d'accès stockée sur un conteneur, son application peut prendre trente secondes. Au cours de cet intervalle, une signature d'accès partagé associée à la stratégie d'accès stockée échoue avec le code d'état 403 (Interdit), jusqu'à ce que la stratégie d'accès devienne active.
function setAccessPolicy(access?: PublicAccessType, containerAcl?: SignedIdentifier[], options?: ContainerSetAccessPolicyOptions)
Paramètres
- access
- PublicAccessType
Niveau d’accès public aux données dans le conteneur.
- containerAcl
Tableau d’éléments ayant chacun un ID unique et des détails de la stratégie d’accès.
- options
- ContainerSetAccessPolicyOptions
Options de l’opération de stratégie d’accès de jeu de conteneurs.
Retours
Promise<ContainerSetAccessPolicyResponse>
setMetadata(Metadata, ContainerSetMetadataOptions)
Définit une ou plusieurs paires nom-valeur définies par l’utilisateur pour le conteneur spécifié. Si aucune option n’est fournie ou si aucune métadonnées n’est définie dans le paramètre , les métadonnées du conteneur sont supprimées.
function setMetadata(metadata?: Metadata, options?: ContainerSetMetadataOptions)
Paramètres
- metadata
- Metadata
Remplacez les métadonnées existantes par cette valeur. Si aucune valeur n’a été fournie, les métadonnées existantes seront supprimées.
- options
- ContainerSetMetadataOptions
Options de l’opération Container Set Metadata.
Retours
Promise<ContainerSetMetadataResponse>
uploadBlockBlob(string, HttpRequestBody, number, BlockBlobUploadOptions)
Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant. La mise à jour d'un objet blob de blocs existant remplace toutes les métadonnées existantes de l'objet blob. Les mises à jour partielles ne sont pas prises en charge ; le contenu de l’objet blob existant est remplacé par le nouveau contenu. Pour effectuer une mise à jour partielle d’un objet blob de blocs, utilisez <xref:BlockBlobClient.stageBlock> et <xref:BlockBlobClient.commitBlockList>.
Il s’agit d’une méthode de chargement non parallèle. Utilisez <xref:BlockBlobClient.uploadFile>ou <xref:BlockBlobClient.uploadStream><xref:BlockBlobClient.uploadBrowserData> pour de meilleures performances avec le chargement concurrentiel.
function uploadBlockBlob(blobName: string, body: HttpRequestBody, contentLength: number, options?: BlockBlobUploadOptions)
Paramètres
- blobName
-
string
Nom de l’objet blob de blocs à créer ou à mettre à jour.
- body
-
HttpRequestBody
Blob, string, ArrayBuffer, ArrayBufferView ou une fonction qui retourne un nouveau flux accessible en lecture dont le décalage provient du début de la source de données.
- contentLength
-
number
Longueur du corps en octets. Utilisez Buffer.byteLength() pour calculer la longueur du corps d’une chaîne incluant des caractères non codés en Base64/Hex.
- options
- BlockBlobUploadOptions
Options permettant de configurer l’opération de chargement d’objets blob de blocs.
Retours
Promise<Object>
Les données de réponse de chargement d’objets blob de blocs et l’instance BlockBlobClient correspondante.
Azure SDK for JavaScript