Azure Web PubSub 服务数据平面 REST API 参考
如上述工作流图和内部情况中描述的详细工作流所示,应用服务器可以使用 Web PubSub 服务公开的 REST API 向客户端发送消息或管理连接的客户端。 本文详细介绍了 REST API。
使用 REST API
通过 Azure Web PubSub 服务 AccessKey 进行身份验证
在每个 HTTP 请求中,需要使用带 JSON Web 令牌 (JWT) 的授权标头才能使用 Azure Web PubSub 服务进行身份验证。
签名算法和签名
HS256
,即 HMAC-SHA256,用作签名算法。
应在 Azure Web PubSub 服务实例的连接字符串中使用 AccessKey
对生成的 JWT 令牌进行签名。
声明
以下声明需要包含在 JWT 令牌中。
声明类型 | 是否必需 | 说明 |
---|---|---|
aud |
是 | 应与你的 HTTP 请求 URL 相同。 例如,广播请求的受众类似于 https://example.webpubsub.azure.com/api/hubs/myhub/:send?api-version=2022-11-01 。 |
exp |
是 | 此令牌过期的纪元时间。 |
JS 中的伪代码:
const bearerToken = jwt.sign({}, connectionString.accessKey, {
audience: request.url,
expiresIn: "1h",
algorithm: "HS256",
});
通过 Microsoft Entra 令牌进行身份验证
与使用 AccessKey
一样,还需要 JSON Web 令牌 (JWT) 对 HTTP 请求进行身份验证。
区别在于,在此方案中,JWT 令牌由 Microsoft Entra ID 生成。
还可以使用基于角色的访问控制 (RBAC),为从服务器发出的针对 Azure Web PubSub 服务的请求授权。
API
操作组 | 说明 |
---|---|
服务状态 | 提供用于检查服务状态的操作 |
中心操作 | 提供用于管理连接并向其发送消息的操作。 |