验证请求
使用授权令牌对对话 webhook 的请求进行签名
,并采用以下格式:
google-assistant-signature: "<JWT token>"
身份验证令牌遵循 JSON 网络令牌格式,
其中受众群体字段值等于以下项目的 Actions 控制台项目 ID:
应用。如需验证签名,请解压缩令牌并确保填写了 audience 字段
与应用的项目 ID 匹配。为此,您可以使用与 JWT 兼容的
例如 Google API Node.js 客户端,
或直接使用 Actions on Google Node.js 客户端库
ConversationOptions#verification
选项,如以下代码段所示:
const {conversation} = require('@assistant/conversation');
const app = conversation({verification: 'nodejs-cloud-test-project-1234'});
// HTTP Code 403 will be thrown by default on verification error per request.
JWT 格式如下:
{
"iss": "https://accounts.google.com"
"aud": [project-id],
"nbf": number,
"iat": number,
"exp": number,
"jti": string
}
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-10-15。
[null,null,["最后更新时间 (UTC):2024-10-15。"],[[["Conversational webhook requests include an authorization token in the `google-assistant-signature` header for security purposes."],["This token is a JSON Web Token (JWT) containing an audience field that matches your Actions console project ID, enabling verification."],["You can verify the signature using a JWT library or the `ConversationOptions#verification` setting within the Actions on Google Node.js Client Library."],["The JWT structure includes standard fields like issuer, audience, issue and expiration timestamps, and a unique identifier."]]],[]]