我们在Office 365中设置了一个应用程序。客户已向“ Calendar.ReadWrite
”授予“管理员同意”访问权,以访问租户中所有用户的日历。
我们的Web应用程序能够set up subscriptions for change notifications,但电子邮件地址中带有撇号的用户(即John.O’Neil@nonwhere.com
)
订阅请求导致以下错误:
{
"error": {
"code": "ExtensionError",
"message": "Operation: Create; Exception: [Status Code: ServiceUnavailable; Reason: Mailbox info is stale.]",
"innerError": {
"request-id": "11a8e561-0966-49aa-ac87-f884c1582764",
"date": "2019-02-25T22:46:40"
}
}
}
在同一应用程序的多个租户中的用户看到此问题。我们可以在我们的测试租户中复制它。
在我们的测试中,使用应用程序承载令牌的授权无法订阅电子邮件地址中带有撇号的那些用户的日历。应用程序可以正确订阅电子邮件地址中没有撇号的其他用户的日历。
此外,相同的EXACT请求会以用户自己的授权标头令牌成功发送。因此,看起来应用程序处理具有不同的代码路径,这会使电子邮件地址中带有撇号的用户出错。