אימות הבקשות

בקשות ל-webhook של השיחה חתומות עם אסימון הרשאה בכותרת, בפורמט הבא:

google-assistant-signature: "<JWT token>"

אסימון האימות תואם לפורמט JSON Web Token, כאשר ערך השדה קהל שווה למזהה הפרויקט במסוף Actions. את האפליקציה. כדי לאמת את החתימה, פורקים את האסימון ומוודאים ששדה הקהל תואם למזהה הפרויקט של האפליקציה. אפשר לעשות זאת באמצעות מפתח תואם-JWT ספריית פרטי כניסה, כמו לקוח Google APIs 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
}