【问题标题】:Microsoft Graph API - SendMail http 400 - API url from documentation not workingMicrosoft Graph API - SendMail http 400 - 文档中的 API url 不起作用
【发布时间】:2019-08-13 20:27:27
【问题描述】:

我的应用程序使用 Microsoft Graph 发送电子邮件。我们关注了the documentation,它按预期工作了将近一年:

https://graph.microsoft.com/v1.0/users/me/microsoft.graph.sendmail

自 2019 年 3 月 8 日起,PROD 中的相同代码 sendmail API 开始失败并出现 HTTP 400 - Bad Request

{
  "error": {
    "code": "TargetIdShouldNotBeMeOrWhitespace",
    "message": "Id is malformed.",
    "innerError": {
      "request-id": "0de5a4eb-dac4-4d98-a4b4-178e503a6657",
      "date": "2019-03-19T17:16:20"
    }
  }
}

作为调查的一部分,我们发现示例中使用的 SendMail 文档的 URL 与 API 帮助部分不同。调用此 URL 时我们成功了:

https://graph.microsoft.com/v1.0/me/sendmail

问题:

  1. 显然,2019 年 3 月 8 日左右,Graph API 发生了一些更新,导致早期 URL 无法正常工作

  2. 文档中有 2 个具有误导性/混淆性的 URL:一个是 API 帮助部分,一个是示例。截至目前,帮助部分中的 API URL 不再有效。这应该使用正确的 URL 来解决。

  3. 为什么引入了这样的重大更改,导致我们的应用程序的 PROD 中断?

  4. 获取这些更改的官方渠道是什么?

【问题讨论】:

  • URL 一直是/me,而不是/user/me,文档页面反映了这一点。请参阅页面上的示例。
  • 如果您发现文档有问题,微软在其文档页面上有一些不错的 github 集成。所以一定要给他们创建一个问题。

标签: microsoft-graph-api microsoft-graph-mail


【解决方案1】:

正确的 URI 是 https://graph.microsoft.com/v1.0/me/microsoft.graph.sendmail(不是 /me

【讨论】:

    【解决方案2】:

    正确的 API 路由是:https://graph.microsoft.com/v1.0/me/sendMail

    您可以在这里找到更多实用示例:https://developer.microsoft.com/en-us/graph/graph-explorer#

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多