创建MicrosoftGraph订阅时出现UnknownError

时间:2018-10-22 21:11:39

标签: microsoft-graph

我正在研究一个使用Microsft图设置Webhook的项目。我已经完成了所有设置,以验证根据(https://developer.microsoft.com/en-us/graph/docs/concepts/webhooks)创建的端点,但是,我从Microsoft收到一个“未知错误”,如下所示:

"__SLOG0__", "{
  \"error\": {
    \"code\": \"UnknownError\",
    \"message\": \"\",
    \"innerError\": {
      \"request-id\": \"d0037849-dc79-4244-bb15-cf72841c6653\",
      \"date\": \"2018-10-22T20:00:43\"
    }
  }
}"

我使用以下值创建订阅:

$body_vals = dict[
      "changeType" => "created,updated",
      "notificationUrl" => $notification_uri,
      "resource" => "/me/mailfolders('inbox')/messages",
      "expirationDateTime" =>
        Office365APIUtils::getISO8601DateStamp($date->getTimestamp()),
      "clientState" => "SecretClientState",
    ]

传递到我对端点的POST请求中。我知道这与我的特定通知uri(这是一个Facebook端点)有关,因为例如,如果我将端点切换为https://google.com,我会得到一个更有用的响应:

"__SLOG0__", "{
  \"error\": {
    \"code\": \"InvalidRequest\",
    \"message\": \"Subscription validation request failed. Must respond with 200 OK to this request.\",
    \"innerError\": {
      \"request-id\": \"4e2ac4af-4d10-416d-83a1-4eb896a35418\",
      \"date\": \"2018-10-22T19:52:46\"
    }
  }
}"

说我必须在端点进行验证。我已经注册了我的应用程序,如果Graph团队中有任何人,或者之前曾处理过这些UnknownErrors线索的人?示例请求ID是7da743ce-6ffe-4d80-8611-a5be024c8b21

1 个答案:

答案 0 :(得分:1)

您的代码似乎未执行端点验证步骤。 This article包含如何创建订阅的完整演练。查看“通知端点验证”部分;您的端点必须能够响应200并包含验证令牌。