开发与工程 ✓ Microsoft · 官方 azure-blob-storagetypescriptjavascriptazure-sdksas-tokensstreamingnodejs

Azure Blob Storage TypeScript 技能

为 TypeScript/JavaScript 应用提供 Azure Blob Storage 的上传、下载与管理实现范式。

FollowSkills 评估 · FSRS-2.0
谨慎使用
51/ 100 五分制 2.6 / 5
1 2 3 4 5 6
1信任安全13 / 25 · 2.6/5

文档推荐 Entra ID、用户委托 SAS、HTTPS、短期令牌和最小权限,并披露了密钥、连接字符串及 SAS 的数据流;但仍展示账户密钥、匿名访问、账户级全权限 SAS,并直接打印 SAS URL,缺少用户确认、密钥泄露后的撤销/回滚流程和更严格的敏感数据处理约束,因此扣分。

2可靠稳定8 / 20 · 2.0/5

涵盖安装、认证、容器、Blob、流式传输、SAS 和错误处理,且错误示例包含状态码反馈;但未提供该技能关键路径的专门测试,主文档与引用资料在 uploadStream 参数、浏览器上传 API 等处存在疑似不一致,部分环境和类型假设未验证,因此静态评分受限。

3适用触发10 / 15 · 3.3/5

触发词、目标 SDK、Node.js 与浏览器差异及主要使用场景较清楚;但未明确非适用范围、权限前置条件、版本兼容边界或中文使用说明,也未说明中国大陆网络访问 Azure 端点可能存在的环境限制,因此扣分。

4规范维护9 / 15 · 3.0/5

文档按安装、认证、操作、SAS、流式模式和最佳实践分层,带 MIT 许可、作者和 1.0.0 版本,并提供引用资料;但当前版本仅写作 12.x,缺少变更日志、明确维护责任、更新路径、FAQ 和系统化限制说明,因此扣分。

5有效结果7 / 15 · 2.3/5

能够覆盖 Blob Storage 常见上传、下载、列举、删除、复制、元数据、流式处理及 SAS 生成任务,示例数量充足;但示例存在潜在 API/类型错误,未给出可验证的完整项目输出或测试结果,用户仍可能需要较多校正,因此按静态上限评分。

6证据核验4 / 10 · 2.0/5

引用资料链接到 Azure SDK 官方仓库和官方文档,仓库还提供通用 CI、评估工作流和测试代码;但没有该技能专属的验收标准、测试覆盖或执行结果,且本次未执行代码,只能给予有限可审计性。

证据充分度: 评估于 2026年7月20日 审查版本 9ccaf7c3704a
使用前请注意
  • 不要将账户密钥、连接字符串或 SAS 令牌打印到日志、客户端代码或长期存储中;优先使用用户委托 SAS、HTTPS、短过期时间和最小权限。
  • 在采用示例前核对当前 @azure/storage-blob 版本的真实 API,尤其是 uploadStream、浏览器上传、并发参数和响应流类型。
  • 删除、覆盖、复制和生成写入型 SAS 可能造成外部数据影响;应在应用层加入明确确认、范围限制、审计和恢复策略。
  • Azure 服务端点、身份认证和网络访问可能受中国大陆网络及企业策略影响,部署前需验证可达性。
查看完整评分方法 →

这个 Skill 能做什么,适合哪些场景?

该技能面向使用 @azure/storage-blob 的 TypeScript/JavaScript 开发者,覆盖 Azure Blob Storage 的客户端创建、身份验证和常见存储操作。它提供容器与 Blob 的创建、列举、删除、复制、属性和元数据管理示例,也涵盖块 Blob、追加 Blob、页 Blob、SAS 令牌及流式传输。内容同时说明 Node.js 与浏览器能力差异,并给出错误处理和实践建议。它适合需要快速建立 Azure Blob Storage 集成的编码代理场景,但不是独立运行的存储服务。

提供安装 @azure/storage-blob 与 @azure/identity 的步骤,指导代理读取 Azure 存储账户环境变量并创建 BlobServiceClient、ContainerClient 和 BlobClient。它给出容器创建、列举和删除,Blob 上传、下载、列举、删除和复制,以及属性、元数据和 HTTP 标头管理的 TypeScript/JavaScript 代码。它还展示 Microsoft Entra 凭据、连接字符串、共享密钥和 SAS 令牌认证,SAS 生成,以及块 Blob、追加 Blob和页 Blob 的使用方式。内容包括 Node.js 文件与流操作、浏览器上传、RestError 状态码处理和平台差异。

  1. TypeScript 后端开发者需要将文本、Buffer 或本地文件上传到 Azure Blob Storage 时。
  2. Node.js 应用需要使用流式传输处理大型文件,并显示上传进度时。
  3. 浏览器应用需要通过 SAS 令牌执行客户端 Blob 上传时。
  4. 开发者需要列举容器或 Blob、按前缀筛选并管理虚拟目录时。
  5. 日志或审计系统需要追加 Blob,或虚拟磁盘场景需要页 Blob 时。

这个 Skill 有哪些优点和局限?

优点
  • 覆盖容器、Blob、认证、SAS、元数据、错误处理和 Node.js/浏览器差异。
  • 示例直接对应 @azure/storage-blob 的主要客户端和操作。
  • 包含流式上传、文件下载、分页 Blob 和多种 Blob 类型的具体模式。
  • README 显示该 TypeScript 技能有 17 个测试场景。
局限
  • 要求 Node.js 18 或更高版本,并依赖 Azure SDK 包。
  • 共享密钥、SAS 生成以及文件和流方法部分仅适用于 Node.js。
  • 示例依赖 Azure 存储账户、环境变量和相应权限;技能本身不提供资源 provisioning。
  • 集合处于积极开发阶段,内容和测试仍可能更新。

如何安装这个 Skill?

在项目中运行:

npx skills add microsoft/skills

在安装向导中选择需要的技能。集合技能会安装到所选编码代理的目录,例如 GitHub Copilot 使用的 .github/skills/,多代理场景下也可建立符号链接。该技能的仓库路径为 .github/plugins/azure-sdk-typescript/skills/azure-storage-blob-ts/SKILL.md。使用 SDK 时,项目依赖安装命令为:

npm install @azure/storage-blob @azure/identity

如何使用这个 Skill?

将该技能提供给编码代理后,可使用明确触发词,例如:“请用 @azure/storage-blob 和 DefaultAzureCredential 创建 BlobServiceClient,上传文件并处理 RestError。”也可以直接请求“上传、下载、列举或管理 Azure Blob Storage 中的 Blob”。实际账户名称、凭据、连接字符串或 SAS 值需要由项目环境提供;技能未定义独立的配置文件或运行命令。

常见问题

这个技能是否会自动创建 Azure Storage 账户?
不会。它提供 SDK 集成代码和操作模式,但源材料没有说明它会 provisioning 或创建 Azure 资源。
浏览器端是否支持所有认证和文件操作?
不支持。StorageSharedKeyCredential、DefaultAzureCredential、uploadFile、uploadStream、downloadToFile、downloadToBuffer 和 SAS 生成列为 Node.js 专属;浏览器可使用 uploadData 以及匿名或 SAS 访问。
生产环境推荐怎样认证?
技能建议生产环境使用 ManagedIdentityCredential 或 WorkloadIdentityCredential;本地开发推荐 DefaultAzureCredential。
使用这个技能需要支付额外费用吗?
技能仓库采用 MIT 许可证。源材料没有说明 Azure Blob Storage 服务本身的费用。

同仓库的其他 Skills

均来自 microsoft/agent-skills

开发与工程 ✓ Microsoft · 官方

Azure Queue Storage TypeScript 技能

帮助 TypeScript/JavaScript 应用可靠地发送、接收和管理 Azure 队列消息。

开发与工程 ✓ Microsoft · 官方

Microsoft 365 Agents TypeScript 技能

帮助你用 TypeScript 构建可路由、可流式响应并接入 Copilot Studio 的 Microsoft 365 企业代理。

开发与工程 ✓ Microsoft · 官方

Azure Blob Storage Python 技能

帮助 Python 开发者安全高效地操作 Azure Blob Storage。

开发与工程 ✓ Microsoft · 官方

Azure Blob Storage Java 技能

帮助 Java 开发者可靠地构建 Azure Blob Storage 文件存储功能。

开发与工程 ✓ Microsoft · 官方

Azure Rust Blob 存储技能

帮助 Rust 开发者使用官方 Azure SDK 管理 Blob 和容器。

开发与工程 ✓ Microsoft · 官方

Azure 文件共享 TypeScript 技能

为 TypeScript 代码代理提供 Azure SMB 文件共享操作指南。

开发与工程 ✓ Microsoft · 官方

Azure Identity TypeScript

为 TypeScript Azure 应用配置安全、可切换的 Microsoft Entra ID 身份验证。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB TypeScript 技能

为 TypeScript 和 JavaScript 编码代理提供 Cosmos DB 数据操作模式。

开发与工程 ✓ Microsoft · 官方

Azure 文档智能 TypeScript 技能

在 TypeScript 应用中提取文档文本、表格和结构化字段。

开发与工程 ✓ Microsoft · 官方

Azure AI Search TypeScript 技能

帮助 TypeScript 开发者构建向量、混合和语义搜索应用。

开发与工程 ✓ Microsoft · 官方

Azure Service Bus TypeScript 技能

用 Azure Service Bus 构建可靠的企业消息应用。

开发与工程 ✓ Microsoft · 官方

Azure AI Projects TypeScript 技能

为 TypeScript 开发者提供 Azure AI Foundry 项目、智能体和评估的 SDK 实现指导。

开发与工程 ✓ Microsoft · 官方

Azure 应用配置 TypeScript 技能

帮助 TypeScript 应用集中管理配置、功能开关和动态刷新。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault 密钥保管库技能

为 TypeScript 应用安全存取 Azure Key Vault 中的机密,并管理密钥生命周期。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault 密钥开发技能

为 TypeScript 应用提供 Azure Key Vault 密钥创建、加密签名与轮换指导。

开发与工程 ✓ Microsoft · 官方

Azure 文档翻译 Python 技能

帮助 Python 开发者批量翻译 Azure Blob Storage 中的文档,同时保留原始格式。

开发与工程 ✓ Microsoft · 官方

Azure Event Hubs TypeScript 技能

帮助 TypeScript 开发者构建高吞吐、可分区且支持检查点的 Azure Event Hubs 流处理应用。

开发与工程 ✓ Microsoft · 官方

Azure AI 内容安全 TypeScript 技能

帮助 TypeScript 应用检测有害内容并管理自定义拦截词。

开发与工程 ✓ Microsoft · 官方

Azure Event Hubs Rust 技能

帮助 Rust 开发者使用官方 Azure SDK 构建事件发送、批量处理和分区消费流程。

开发与工程 ✓ Microsoft · 官方

MCP 服务器开发指南

帮助开发者为外部 API 构建结构清晰、可测试、便于 LLM 使用的 MCP 服务器。

相关 Skills