使用 Graph API(版本 2.3.2)发送带有混合大小附件(> 4MB)的邮件

Viv*_*dev 0 microsoft-graph-sdks microsoft-graph-mail microsoft-graph-api

我有以下附件列表要通过邮件发送

  • 210KBPDF.pdf
  • 1MBPDF.pdf
  • 4MBPDF.pdf

要发送小于 4 MB(1MBPDF, 210KBPDF) 的总文件大小,我可以使用这种方法,要发送大文件 (4MBPDF),我正在使用此处提供的解决方案

但是,当我尝试使用大文件方法(示例代码)将三个文件(1MBPDF、210KBPDF、4MBPDF)一起发送时,出现以下错误...

com.microsoft.graph.http.GraphServiceException:错误代码:ErrorAttachmentSizeShouldNotBeLessThanMinimumSize 错误消息:附件大小必须大于最小大小。

POST https://graph.microsoft.com/v1.0/me/messages/AAMkAGNhNWJlNjdkLWNkZTUtNDE1Yy1hYzkxLTkyOWI1M2U3NGQzOABGAAAAAAASIVxVSsS8RI-T3F73mdJZBwANqxyKMlQbSqZO439E21_mAAAAAAEPAAANqxyKMlQbSqZO439E21_mAAAVRY2dAAA=/attachments/microsoft.graph.createUploadSession SdkVersion:图表的Java / V2.3.2授权:[PII_REDACTED] { “attachmentItem”: {“附件类型”:“文件”,“内容[...]

400:错误请求 [...]

如果我在实施该方法时犯了任何错误,请告诉我,或者建议我发送多个大小混合的附件的任何解决方法。

谢谢

bay*_*wet 6

以下是我建议您避免任何问题的方法:

  1. 创建电子邮件草稿
  2. 通过添加附件端点上传任何小于 3MB 的附件
  3. 通过大型上传端点上传任何大于 3MB 的附件
  4. 发送电子邮件端点

使用这种方法而不是尝试上传带有草稿电子邮件创建的小附件,当 base64 编码的小附件的总大小超过 Microsoft Graph 上每个请求的最大大小 4MB 时,您将避免随机失败。