首页 > 解决方案 > Microsoft Graph WebHook:订阅验证令牌空白?

问题描述

我正在尝试为消息设置 MS Graph webhook 订阅,但似乎 Graph 正在发送空白的validationToken。我正在连接到https://graph.microsoft.com/beta/subscriptions

我的 API 端点在 Postman 中工作并成功返回仅包含验证令牌的纯文本响应,但是当我调用 MS Graph 时,我收到以下错误“订阅验证请求失败。响应必须与验证令牌查询参数完全匹配”。我还尝试将validationtoken 和validationToken 作为要查找的参数。

完整的错误信息

"{\r\n  \"error\": {\r\n    \"code\": \"InvalidRequest\",\r\n    \"message\": \"Subscription validation request failed. Response must exactly match validationToken query parameter.\",\r\n    \"innerError\": {\r\n      \"request-id\": \"f1546835-606d-4bd8-ab3c-dfb2c75285aa\",\r\n      \"date\": \"2018-08-10T03:45:56\"\r\n    }\r\n  }\r\n}"

标签: microsoft-graph-api

解决方案


要创建订阅,您需要使用 https 公开通知 URL(您可以在https://developer.microsoft.com/en-us/graph/docs/concepts/webhooks查看 Graph 文档)。

当您发送创建订阅请求时,您的通知 URL 将收到的第一条发布消息是带有验证令牌的消息。您必须发回此验证令牌。现在您应该在您指定的通知 URL 上收到通知。查看此故障,通知 URL 似乎没有发回验证令牌。

Postman 和 MSGraph 之间的响应不应有所不同。如果您仍然看到问题,请分享您的通知网址,我们将尝试获得重现。


推荐阅读