订阅 Outlook/Office 365 API 在 C# 中找不到状态代码
Subscribe to Outlook/Office 365 API Status Code NotFound in C#
我在创建订阅时遇到问题。
我的步骤是:
- 在 https://apps.dev.microsoft.com
注册应用程序
- 更新权限
阅读邮件和用户信息
- 然后更新代码,在https://docs.microsoft.com/en-us/outlook/rest/dotnet-tutorial
处执行相同的步骤
登录后,我可以获得access token
登录后的画面
然后我尝试为收件箱创建订阅
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);
在通知中实现通知 URL - 我可以得到验证令牌和 return 纯文本格式。
public async Task<ActionResult> Listen()
{
if (Request.QueryString["validationToken"] != null)
{
var token = Request.QueryString["validationToken"];
return Content(token, "plain/text");
}
}
但我总是得到这个错误。
有没有人知道问题?
您必须公开 public HTTPS 端点才能创建订阅并接收来自 Microsoft Graph 的通知。
我在创建订阅时遇到问题。 我的步骤是:
- 在 https://apps.dev.microsoft.com 注册应用程序
- 更新权限 阅读邮件和用户信息
- 然后更新代码,在https://docs.microsoft.com/en-us/outlook/rest/dotnet-tutorial 处执行相同的步骤
登录后,我可以获得access token 登录后的画面
然后我尝试为收件箱创建订阅
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);
在通知中实现通知 URL - 我可以得到验证令牌和 return 纯文本格式。
public async Task<ActionResult> Listen() { if (Request.QueryString["validationToken"] != null) { var token = Request.QueryString["validationToken"]; return Content(token, "plain/text"); } }
但我总是得到这个错误。
有没有人知道问题?
您必须公开 public HTTPS 端点才能创建订阅并接收来自 Microsoft Graph 的通知。