Builderoom

2026年9月28日

Azure SDK for JavaScript

查看仓库

为 Node.js 和浏览器环境提供访问与管理 Azure 服务的 JavaScript/TypeScript 库集合。

MIT
最小示例代码python
import { SecretClient } from "@azure/keyvault-secrets";
import { ManagedIdentityCredential } from "@azure/identity";

function removeUserAgentPolicy() {
  return {
    name: "removeUserAgentPolicy",
    sendRequest(request, next) {
      request.headers.delete("User-Agent");
      return next(request);
    },
  };
}

const credential = new ManagedIdentityCredential();
const secretClient = new SecretClient("https://your-keyvault-name.vault.azure.net", credential, {
  additionalPolicies: [
    {
      position: "perCall",
      policy: removeUserAgentPolicy(),
    },
  ],
});

产品信息

形态
API / SDK / 库
分类
开发与工程 › 云与基础设施
定价
开源
授权协议
MIT
首发日期
2026年9月28日
收录时间
2026年9月28日

概览

GitHubGitHub

Azure SDK for JavaScript 是 Microsoft 维护的官方 SDK 仓库,用于在 Node.js 和浏览器环境中与 Azure 服务进行交互。该仓库包含覆盖各类 Azure 服务的库,采用 TypeScript 编写,遵循 MIT 开源协议。 ## 库的分类 SDK 中的包分为两类: - **Client libraries(客户端库)**:用于在已有 Azure 资源的前提下消费和操作这些资源。大部分客户端库遵循 Azure SDK Design Guidelines for JavaScript & TypeScript,共享重试、日志记录、传输协议、身份验证协议等核心功能。 - **Management libraries(管理库)**:用于通过 Azure Resource Manager (ARM) 预配和管理 Azure 资源。这类库的包名以 `@azure/arm-` 开头,基于 Swagger 文件自动生成。较新版本的管理库同样遵循设计指南,提供 Azure Identity 集成、自定义策略的 HTTP Pipeline、错误处理、分布式追踪等能力。 ## 主要能力 - 支持 Node.js 与浏览器双运行环境。 - 统一的身份验证体验,通过 Azure Identity 库实现。 - 可配置的 HTTP Pipeline,支持自定义策略注入。 - 内置重试机制、日志记录和分布式追踪。 - 提供遥测数据收集选项,默认开启,可在客户端构造时通过自定义策略关闭。 ## 适用人群 适合需要在 JavaScript 或 TypeScript 项目中调用 Azure 服务 API、管理 Azure 资源的开发者。每个服务对应的包在 `/sdk` 目录下有独立的 README 和代码示例,也可在 npm 上获取。API 参考文档分为最新版本的公开文档和历史版本的分版本文档。

功能特性

  • Node.js 与浏览器支持:同一套 SDK 可在 Node.js 服务端和浏览器客户端环境中运行。
  • 客户端库:用于消费和操作已存在的 Azure 资源,遵循统一的设计指南。
  • 管理库:通过 ARM 预配和管理 Azure 资源,包名以 @azure/arm- 开头。
  • Azure Identity 集成:新版管理库和客户端库共享 Azure Identity 库进行身份验证。
  • HTTP Pipeline:支持自定义策略的可配置 HTTP 管道,用于请求拦截和处理。
  • 重试与错误处理:内置重试机制和统一的错误处理能力。
  • 分布式追踪:支持分布式追踪,便于监控和调试跨服务调用。
  • 遥测控制:默认收集使用遥测数据,可通过自定义策略移除 User-Agent 来关闭。
  • TypeScript 编写:整个 SDK 使用 TypeScript 开发,提供类型定义。

版本更新

新版本提醒我

首个版本 · Azure SDK for JavaScript

Q&A

客户端库和管理库有什么区别?由 AI 生成
客户端库用于在 Azure 资源已存在的情况下消费和操作这些资源;管理库用于通过 Azure Resource Manager (ARM) 预配和管理 Azure 资源,其包名以 @azure/arm- 开头。
如何关闭 SDK 的遥测数据收集?由 AI 生成
遥测默认开启。可以在创建客户端时,通过 additionalPolicies 选项传入一个自定义 HTTP pipeline 策略,在该策略中删除请求头的 User-Agent 字段,从而关闭遥测。需要对每个新客户端实例都执行此操作。
升级管理库后遇到认证问题怎么办?由 AI 生成
可能是因为升级到了新版 SDK 但未更新认证代码。新版管理库遵循新的设计指南并使用 Azure Identity 库,需要参考官方提供的迁移指南来调整认证逻辑。
在哪里可以找到各服务包的文档和示例?由 AI 生成
每个包的 README 包含代码示例和包信息,位于仓库 /sdk 目录下对应服务的文件夹中,也可以在 npm 上该包的页面找到。最新版 API 文档在 Microsoft Learn,旧版在 azure.github.io。
这个 SDK 支持哪些运行环境?由 AI 生成
支持 Node.js 和浏览器环境。
查看仓库
收藏

这个产品还没有主理人

由平台收录或原作者已注销。如果它是你的作品,证明与它的关系后即可成为主理人。

认领这个产品

同类产品