获取空状态代码,获取附件

时间:2019-03-26 19:49:51

标签: microsoft-graph

这可能与电子邮件获取Get status as null while fetching emails的根本原因相同。但是由于我还没有得到答复,所以在这里问。唯一的区别是这次是获取附件。

我正在使用/me/messages/'.$id.'/attachments之类的请求来获取附件,但有时状态码为空,在我的代码中,我忽略了所有空状态码并将其视为无效响应。但是在我们的日志中,我发现那些空状态代码实际上具有有效的响应,并且附件包含在这些响应中。那么我应该将空状态代码视为有效吗?但这看起来很有风险。

1 个答案:

答案 0 :(得分:0)

我认为您的附件数组当前没有值。这就是为什么您得到如下的空响应

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users",
    "value": []
}

因此,您应该使用Graph API Post请求添加新附件

 POST https://graph.microsoft.com/v1.0/me/messages/{{id}}/attachments
Content-type: application/json
Content-length: 200

{
  "@odata.type": "#microsoft.graph.itemAttachment",
  "name": "Holiday event", 
  "item": {
    "@odata.type": "microsoft.graph.event",
    "subject": "Discuss gifts for children",
    "body": {
      "contentType": "HTML",
      "content": "Let's look for funding!"
    },
    "start": {
      "dateTime": "2016-12-02T18:00:00",
      "timeZone": "Pacific Standard Time"
    },
    "end": {
      "dateTime": "2016-12-02T19:00:00",
      "timeZone": "Pacific Standard Time"
    }
  }
}

然后发出GET请求以获取新创建的附件

GET /me/messages/{id}/attachments

还添加应用程序权限Mail.Read