订阅 Outlook/Office 365 API 在 C# 中找不到状态代码

Subscribe to Outlook/Office 365 API Status Code NotFound in C#

我在创建订阅时遇到问题。 我的步骤是:

  1. https://apps.dev.microsoft.com
  2. 注册应用程序
  3. 更新权限 阅读邮件和用户信息
  4. 然后更新代码,在https://docs.microsoft.com/en-us/outlook/rest/dotnet-tutorial
  5. 处执行相同的步骤
  6. 登录后,我可以获得access token 登录后的画面

  7. 然后我尝试为收件箱创建订阅

    var newSub = new Subscription
    {
        Resource = "me/mailFolders{'Inbox'}/messages",
        ChangeType = "created,updated",
        NotificationUrl = notificationUrl,
        ClientState = clientState,
        ExpirationDateTime = DateTime.Now.AddMinutes(15)
    };
    var result = await graphClient.Subscriptions.Request().AddAsync(newSub);
    
  8. 在通知中实现通知 URL - 我可以得到验证令牌和 return 纯文本格式。

    public async Task<ActionResult> Listen()
    {
        if (Request.QueryString["validationToken"] != null)
        {
            var token = Request.QueryString["validationToken"];
            return Content(token, "plain/text");
        }
    }
    
  9. 但我总是得到这个错误。

有没有人知道问题?

您必须公开 public HTTPS 端点才能创建订阅并接收来自 Microsoft Graph 的通知。