【问题标题】:Verify request fullfilment dialogflow验证请求履行对话流
【发布时间】:2020-04-20 13:29:15
【问题描述】:

我正在尝试验证我们的履行云功能仅由 Dialogflow 请求。

推荐的解决方案是“Verifying requests”,但在我们的例子中,我们使用的是 Dialogflow,而不是 Actions SDK:

const {dialogflow} = require('actions-on-google');

const fulfillment = dialogflow({
    clientId: "clientIdDialogflow",
    debug: true,
    verification: "projectId"
});
fulfillment.intent("bienvenida",  (conv) => { commonsDialogController.wellcomeFunction(conv) });

...etc
  1. 是否可以使用它来验证 Dialogflow 中的请求或仅在 Actions SDK 中可用?
  2. 如果在 Dialogflow 中,并且不可能使用它,我们必须检索标头并处理 JWT,但在日志中授权标头不存在。标题是:

    Headers { "host": "URL.cloudfunctions.net", "user-agent": "Google-Dialogflow", "transfer-encoding": "chunked", "accept": "*/*", "accept-encoding": "gzip,deflate,br", "content-type": "application/json", "forwarded": "for=\"X.X.X.X\";proto=https", "function-execution-id": "7868dfgr656", "x-appengine-country": "ZZ", "x-appengine-default-version-hostname": "aaaaa-tp.appspot.com", "x-appengine-https": "on", "x-appengine-request-log-id": "id", "x-appengine-user-ip": "X.X.X.X", "x-cloud-trace-context": aaaaaa/aaaa=1", "x-forwarded-for": "X.X.X.X", "x-forwarded-proto": "https", "connection": "close" }
    

    响应中的错误是:

    { "status": 403, "body": { "error": "A verification header key was not found" }, "headers": { "content-type": "application/json;charset=utf-8" } }
    

【问题讨论】:

  • 为了更好地理解:您有一个需要调用 Action SDK 的 DialogFlow 实现?并且您想应用安全性(确保调用者是 DialogFlow)?
  • 是的,但在我的实现中,我们使用的是对话流,而不是 Action SDK。但是我们想使用 Action SDK 中包含的这个功能:developers.google.com/assistant/conversational/webhook/…

标签: dialogflow-es actions-on-google dialogflow-es-fulfillment


【解决方案1】:

查看此answered question 关于 Dialogflow 验证。

您可以在 Dialogflow 控制台上设置验证标头,并使用履行库进行验证,如下所示:

const app = dialogflow({
  verification: {
    HEADER_KEY: 'HEADER_VALUE',
  },
})

在 Dialogflow 控制台中,您可以在Fulfillment > Webhook > HEADERS 下设置标题键和值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-13
    • 1970-01-01
    相关资源
    最近更新 更多