编程语言
首页 > 编程语言> > php – 通过o365 v2 api访问共享邮箱

php – 通过o365 v2 api访问共享邮箱

作者:互联网

所以我可以访问新的o365 v2 api,到目前为止它还运行得很好.但是我无法访问任何共享的收件箱.

更糟糕的是,似乎没有返回任何错误消息:

@odata.context = https://outlook.office.com/api/v2.0/$metadata#Me/Messages(Subject,ReceivedDateTime,SentDateTime,Sender,From,ToRecipients,CcRecipients,BccRecipients,ReplyTo,ConversationId,IsRead,InternetMessageId

[value] = 

有没有人试过这个?

澄清一下,这不是交换,而是outlook.com

解决方法:

您似乎正在使用委托令牌来请求来自特定用户的消息以获取共享框中的消息.

Office 365 REST API仅支持应用程序级令牌以从组织获取消息.委托令牌只能获取委托用户的消息.

您还可以考虑使用EWS来检索共享框的消息作为变通方法.

以下是供您参考的示例:

        string userName = "";
        string password = "";

        ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2013_SP1);
        service.Credentials = new NetworkCredential(userName, password);

        service.TraceEnabled = true;
        service.TraceFlags = TraceFlags.All;

        service.AutodiscoverUrl(userName, RedirectionUrlValidationCallback);


        FolderId SharedMailbox = new FolderId(WellKnownFolderName.Inbox, "sharedmailbox@consoto.onmicrosoft.com");
        ItemView itemView = new ItemView(10);
        var results = service.FindItems(SharedMailbox, itemView);
        foreach (var item in results)
        {
            Console.WriteLine(item.Subject);
        }

如果您希望Office 365 REST API支持此功能,您还可以从here提交反馈.

标签:php,ms-office,outlook,office365
来源: https://codeday.me/bug/20190711/1430592.html