適用于 JavaScript 的 Azure 架構登錄用戶端程式庫 - 1.2.0 版
Azure 架構登錄是由Azure 事件中樞所裝載的架構存放庫服務,提供架構儲存體、版本設定和管理。 序列化程式會利用登錄來減少承載大小,同時使用架構識別碼來描述承載結構,而不是完整架構。
重要連結:
開始使用
必要條件
- Azure 訂用帳戶
- 現有的 架構登錄資源
安裝 @azure/schema-registry
套件
使用 npm
安裝適用于 JavaScript 的 Azure 文字分析 用戶端程式庫:
npm install @azure/schema-registry
建立和驗證 SchemaRegistryClient
若要建立用戶端物件來存取架構登錄 API,您需要架構登錄資源的完整命名空間和 credential
。 Schema Registry 用戶端會使用 Azure Active Directory 認證進行驗證。
您可以使用 Azure 身分識別程式庫向 Azure Active Directory 進行驗證。 若要使用如下所示的 DefaultAzureCredential 提供者,或其他隨附于 Azure SDK 的認證提供者,請安裝 @azure/identity
套件:
npm install @azure/identity
將 AAD 應用程式的用戶端識別碼、租使用者識別碼和用戶端密碼的值設定為環境變數: 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());
重要概念
SchemaRegistryClient
SchemaRegistryClient
提供 API,用於儲存和擷取架構登錄中的架構。
範例
註冊架構
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);
取得現有架構的識別碼
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}`);
}
依識別碼取得現有架構的定義
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}`);
}
依版本取得現有架構的定義
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}`);
}
疑難排解
記錄
啟用記錄有助於找出失敗的相關實用資訊。 若要查看 HTTP 的要求和回應記錄,請將 AZURE_LOG_LEVEL
環境變數設定為 info
。 或者,您可以在 @azure/logger
中呼叫 setLogLevel
,以在執行階段啟用記錄:
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
後續步驟
如需如何使用此程式庫的詳細範例,請參閱 範例 目錄。
參與
此專案歡迎參與和提供建議。 大部分的參與都要求您同意「參與者授權合約 (CLA)」,宣告您有權且確實授與我們使用投稿的權利。 如需詳細資料,請前往 https://cla.microsoft.com 。
當您提交提取要求時,CLA Bot 會自動判斷您是否需要提供 CLA,並適當地裝飾 PR (例如標籤、註解)。 請遵循 bot 提供的指示。 您只需要使用我們的 CLA 在所有存放庫上執行此動作一次。
此專案採用 Microsoft Open Source Code of Conduct (Microsoft 開放原始碼管理辦法)。 如需詳細資訊,請參閱管理辦法常見問題集,如有任何其他問題或意見請連絡 opencode@microsoft.com。
如果您希望向此程式庫投稿,請參閱投稿指南,深入瞭解如何組建與測試程式碼。