技能 Azure Web PubSub Service SDK for Python
📦

Azure Web PubSub Service SDK for Python

安全 🌐 网络访问🔑 环境变量

使用 Azure Web PubSub 构建实时应用

实时通信难以扩展。此技能可帮助你使用 Azure Web PubSub 服务实现基于 WebSocket 的发布/订阅消息传递。

支持: Claude Codex Code(CC)
🥉 72 青铜
1

下载技能 ZIP

2

在 Claude 中上传

前往 设置 → 功能 → 技能 → 上传技能

3

开启并开始使用

测试它

正在使用“Azure Web PubSub Service SDK for Python”。 为用户 'user123' 生成具有组成员身份的客户端访问令牌

预期结果:

已生成带有 URL 端点和用户 ID 的令牌。用户被分配到 'group1' 和 'group2' 组,具有 sendToGroup 和 joinLeaveGroup 角色。

正在使用“Azure Web PubSub Service SDK for Python”。 向所有连接的客户端发送通知

预期结果:

消息已成功广播到 Hub 中的所有连接。内容类型设置为 application/json,包含通知负载。

安全审计

安全
v1 • 2/25/2026

This is a documentation-only skill providing usage examples for the Azure Web PubSub Service SDK. No executable code is present. The skill references network operations and environment variable access as part of legitimate Azure SDK usage patterns. Static analysis found no security issues. The skill is safe to publish.

0
已扫描文件
0
分析行数
2
发现项
1
审计总数

风险因素

🌐 网络访问
未记录任何特定位置
🔑 环境变量
未记录任何特定位置
审计者: claude

质量评分

38
架构
100
可维护性
87
内容
50
社区
100
安全
74
规范符合性

你能构建什么

实时聊天应用

构建一个实时聊天系统,用户可以通过 WebSocket 连接即时发送和接收消息。

实时仪表板更新

使用基于组的消息路由,将实时数据更新推送给连接的仪表板客户端,无需轮询。

多人游戏网络

使用带有用户定向功能的 WebSocket 连接,实现游戏客户端之间的低延迟通信。

试试这些提示

基本设置
帮助我使用连接字符串在 Python 中设置 Azure Web PubSub Service 客户端。我需要向所有连接的客户端发送消息。
用户身份验证
为用户 'alice' 生成一个客户端访问令牌,具有加入组和发送消息的权限。使用 Azure Entra ID 身份验证。
组消息传递
展示如何在 Azure Web PubSub 中将用户添加到组并向特定组发送定向消息。
异步广播
创建一个异步函数,向所有连接广播 JSON 消息,并优雅地处理客户端和凭据的关闭。

最佳实践

  • 使用角色限制客户端权限并遵循最小权限原则
  • 生成短生命周期的令牌并实施令牌刷新机制以确保安全
  • 使用基于组的消息传递实现高效的定向通信,而不是广播

避免

  • 在源代码中使用连接字符串而不是环境变量或 Key Vault
  • 在不使用基于角色的访问控制的情况下向所有客户端授予完全权限
  • 不处理连接失败或在客户端中实现重连逻辑

常见问题

Service SDK 和 Client SDK 有什么区别?
Service SDK 用于服务器端操作,如发送消息和管理连接。Client SDK 用于构建连接到服务的 WebSocket 客户端应用程序。
如何为 WebSocket 连接验证用户身份?
使用带有 user_id 参数的 get_client_access_token。你可以使用连接字符串或 Azure Entra ID 凭据进行身份验证。
我可以向特定用户发送消息而不是广播吗?
是的,使用 send_to_user 发送给单个用户,或使用 send_to_group 发送给组中的多个用户。这比广播更高效。
如何处理连接断开?
为连接事件实现事件处理程序。发送前使用 connection_exists 检查状态。在客户端应用程序中实现重连逻辑。
消息支持哪些内容类型?
SDK 支持 text/plain 用于简单字符串,application/json 用于结构化数据。推荐使用 JSON 处理复杂负载。
SDK 有异步版本吗?
是的,从 azure.messaging.webpubsubservice.aio 导入以进行异步操作。推荐用于高吞吐量应用程序。