我正在使用 MS Graph beta API 实现邮件撤回功能。为了检查 API 是否正常运行,我在 Graph Explorer 中测试了端点,但遇到了错误。
我发送了一个 POST 请求至:
https://graph.microsoft.com/beta/me/mailFolders/sentitems/messages/AAMkAGUyM2ExYmJiLWMzYWItNGI3Ny1iMDUyLWI0OTIyNzAyODVhMwBGAAAAAABFhmG_ZR5kTpWkPkKe6D2sBwDMA-lWCJwxSZ24LJrXBZC4AAAAAAEJAADaUQ84mKTlTqFYQVwWHYPlAAEcRQSeAAA=/recall
并收到以下错误:
{
"error": {
"code": "BadRequest",
"message": "Empty Payload. JSON content expected.",
"innerError": {
"date": "2024-11-11T06:33:26",
"request-id": "5d807648-ce8c-4681-a26b-5a13fb3ad2e8",
"client-request-id": "c7676654-f60e-5c82-1492-a2bbf94c71cb"
}
}
}
根据 MS 文档,调用“已发送邮件”文件夹中的邮件的 API 应该使用 POST 请求,就像我使用的一样。以下是官方指南提供的示例:
以下是指南的链接: https://github.com/microsoftgraph/microsoft-graph-docs-contrib/blob/main/api-reference/beta/api/message-recall.md https://learn.microsoft.com/en-us/graph/api/message-recall?view=graph-rest-beta
我还希望能够使用这样的代码,但是在 SDK 中的消息下找不到调用函数:
var graphServiceClient = GetGraphServiceClient_Beta();
var result = graphServiceClient.Users[userinfo.UserPrincipalName].MailFolders["sentitems"].Messages[messageId].recall.PostAsync().Result;
我的问题:
- 如何在 MS Graph 中成功使用调用 API 端点?
- 有没有办法使用 .NET 中的 MS Graph Beta SDK 发送召回请求?(我已经设置了 MS Graph Beta SDK,版本 5.86.0。)
任何帮助或指导都将不胜感激。谢谢!
您缺少
{}
请求正文。即使你添加
{}
到请求主体中,我也不能保证端点会正常工作。它仍然是beta
版本问题。有时它对我来说工作正常,有时它会返回异常Graph API .NET SDK
beta
仍然没有实现recall
该方法。