Bibliothèque cliente Azure Schema Registry pour JavaScript - version 1.2.0
Azure Schema Registry est un service de référentiel de schémas hébergé par Azure Event Hubs, qui fournit le stockage des schémas, le contrôle de version et la gestion. Le Registre est exploité par les sérialiseurs pour réduire la taille de la charge utile tout en décrivant la structure de charge utile avec des identificateurs de schéma plutôt que des schémas complets.
Liens clés :
Prise en main
Prérequis
- Un abonnement Azure
- Une ressource de Registre de schémas existante
Installez le package @azure/schema-registry
Installez la bibliothèque cliente Azure Analyse de texte pour JavaScript avec npm
:
npm install @azure/schema-registry
Créez et authentifiez unSchemaRegistryClient
Pour créer un objet client afin d’accéder à l’API Schema Registry, vous aurez besoin de l’espace de noms complet de votre ressource Schema Registry et d’un credential
. Le client Schema Registry utilise les informations d’identification Azure Active Directory pour s’authentifier.
Vous pouvez vous authentifier auprès d’Azure Active Directory à l’aide de la bibliothèque Azure Identity. Pour utiliser le fournisseur DefaultAzureCredential indiqué ci-dessous ou d’autres fournisseurs d’informations d’identification fournis avec le Kit de développement logiciel (SDK) Azure, installez le @azure/identity
package :
npm install @azure/identity
Définissez les valeurs de l’ID client, de l’ID de locataire et de la clé secrète client de l’application AAD en tant que variables d’environnement : AZURE_CLIENT_ID
, AZURE_TENANT_ID
, AZURE_CLIENT_SECRET
.
const { DefaultAzureCredential } = require("@azure/identity");
const { SchemaRegistryClient } = require("@azure/schema-registry");
const client = new SchemaRegistryClient("<fullyQualifiedNamespace>", new DefaultAzureCredential());
Concepts clés
SchemaRegistryClient
SchemaRegistryClient
fournit l’API pour le stockage et la récupération de schémas dans le registre de schémas.
Exemples
Inscrire un schéma
const { DefaultAzureCredential } = require("@azure/identity");
const { SchemaRegistryClient } = require("@azure/schema-registry");
const client = new SchemaRegistryClient("<fullyQualifiedNamespace>", new DefaultAzureCredential());
const description = {
name: "<name>",
groupName: "<group name>",
format: "<schema format>",
definition: "<schema definition>"
}
const registered = await client.registerSchema(description);
console.log(registered.id);
Obtenir l’ID du schéma existant
const { DefaultAzureCredential } = require("@azure/identity");
const { SchemaRegistryClient } = require("@azure/schema-registry");
const client = new SchemaRegistryClient("<fullyQualifiedNamespace>", new DefaultAzureCredential());
const description = {
name: "<name>",
groupName: "<group name>",
format: "<schema format>",
definition: "<schema definition>"
}
const found = await client.getSchemaProperties(description);
if (found) {
console.log(`Got schema ID=${found.id}`);
}
Obtenir la définition du schéma existant par ID
const { DefaultAzureCredential } = require("@azure/identity");
const { SchemaRegistryClient } = require("@azure/schema-registry");
const client = new SchemaRegistryClient("<fullyQualifiedNamespace>", new DefaultAzureCredential());
const foundSchema = await client.getSchema("<id>");
if (foundSchema) {
console.log(`Got schema definition=${foundSchema.definition}`);
}
Obtenir la définition du schéma existant par version
const { DefaultAzureCredential } = require("@azure/identity");
const { SchemaRegistryClient } = require("@azure/schema-registry");
const client = new SchemaRegistryClient("<fullyQualifiedNamespace>", new DefaultAzureCredential());
const foundSchema = await client.getSchema("<schema name>", "<group name>", version);
if (foundSchema) {
console.log(`Got schema definition=${foundSchema.definition}`);
}
Résolution des problèmes
Journalisation
L’activation de la journalisation peut vous aider à mieux comprendre les échecs. Pour avoir un journal des requêtes et réponses HTTP, définissez la variable d’environnement AZURE_LOG_LEVEL
sur info
. Vous pouvez également activer la journalisation au moment de l’exécution en appelant setLogLevel
dans @azure/logger
:
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
Étapes suivantes
Consultez le répertoire d’exemples pour obtenir des exemples détaillés sur l’utilisation de cette bibliothèque.
Contribution
Ce projet accepte les contributions et les suggestions. La plupart des contributions vous demandent d’accepter un contrat de licence de contribution (CLA) déclarant que vous avez le droit de nous accorder, et que vous nous accordez réellement, les droits d’utilisation de votre contribution. Pour plus d’informations, visitez https://cla.microsoft.com.
Quand vous envoyez une demande de tirage (pull request), un bot CLA détermine automatiquement si vous devez fournir un contrat CLA et agrémenter la demande de tirage de façon appropriée (par exemple, avec une étiquette ou un commentaire). Suivez simplement les instructions fournies par le bot. Vous ne devez effectuer cette opération qu’une seule fois sur tous les dépôts utilisant notre contrat CLA.
Ce projet a adopté le Code de conduite Open Source de Microsoft. Pour plus d’informations, consultez les Questions fréquentes (FAQ) sur le code de conduite ou envoyez vos questions ou vos commentaires à opencode@microsoft.com.
Si vous souhaitez contribuer à cette bibliothèque, lisez le guide de contribution pour en savoir plus sur la génération et le test du code.
Projets associés
Azure SDK for JavaScript