Microsoft Graph returns 403 禁止第二次尝试创建订阅
Microsoft Graph returns 403 Forbidden on a second attempt to create a subscribtion
我确实为以下资源成功订阅了一次 Microsoft Graph 推送通知:
- me/calendars;
- me/calendars/{id}/事件
然而,当我现在尝试做同样的事情时,我得到:
403 Forbidden https://graph.microsoft.com/v1.0/subscriptions
{
"error": {
"code": "ExtensionError",
"message": "Operation: Create; Exception: [Status Code: Forbidden; Reason: Forbidden]",
"innerError": {
"request-id": "7afa93f6-f616-4ea7-9bbe-c977ffd1e239",
"date": "2017-07-14T16:23:35"
}
}
}
我的请求如下所示:
{
"resource": "me/calendars/{ID}/events",
"notificationUrl": "https://myapp/MyService/notifications/",
"clientState": null,
"changeType": "created,updated,deleted",
"expirationDateTime": "2017-07-17T14:53:33Z"
}
我使用的文档:
https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/webhooks
我怀疑 Microsoft Graph 会给出这样的错误,因为在我第一次订阅后有一个当前有效的订阅。但是,当我使用 outlook API 时,我可以获得任意数量的订阅。
问题是,Graph API 是否支持对一个资源的多个订阅?如果是,那么在这种情况下 403 Forbidden 的原因可能是什么?
是的,Microsoft graph 支持对一个资源的多个订阅。我们调查了这个请求。 Exchange 拒绝访问。请确保您使用的是正确的凭据。如有必要,请反应这个问题。谢谢你。
添加额外的 范围 后错误已修复。
之前:
Calendars.ReadWrite.Shared Files.ReadWrite.All User.Read openid offline_access profile
之后:
Calendars.Read Calendars.ReadWrite.Shared Calendars.ReadWrite Files.ReadWrite.All User.Read openid offline_access profile
我确实为以下资源成功订阅了一次 Microsoft Graph 推送通知:
- me/calendars;
- me/calendars/{id}/事件
然而,当我现在尝试做同样的事情时,我得到:
403 Forbidden https://graph.microsoft.com/v1.0/subscriptions
{
"error": {
"code": "ExtensionError",
"message": "Operation: Create; Exception: [Status Code: Forbidden; Reason: Forbidden]",
"innerError": {
"request-id": "7afa93f6-f616-4ea7-9bbe-c977ffd1e239",
"date": "2017-07-14T16:23:35"
}
}
}
我的请求如下所示:
{
"resource": "me/calendars/{ID}/events",
"notificationUrl": "https://myapp/MyService/notifications/",
"clientState": null,
"changeType": "created,updated,deleted",
"expirationDateTime": "2017-07-17T14:53:33Z"
}
我使用的文档: https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/webhooks
我怀疑 Microsoft Graph 会给出这样的错误,因为在我第一次订阅后有一个当前有效的订阅。但是,当我使用 outlook API 时,我可以获得任意数量的订阅。
问题是,Graph API 是否支持对一个资源的多个订阅?如果是,那么在这种情况下 403 Forbidden 的原因可能是什么?
是的,Microsoft graph 支持对一个资源的多个订阅。我们调查了这个请求。 Exchange 拒绝访问。请确保您使用的是正确的凭据。如有必要,请反应这个问题。谢谢你。
添加额外的 范围 后错误已修复。
之前:
Calendars.ReadWrite.Shared Files.ReadWrite.All User.Read openid offline_access profile
之后:
Calendars.Read Calendars.ReadWrite.Shared Calendars.ReadWrite Files.ReadWrite.All User.Read openid offline_access profile