我使用Microsoft Graph获取具有应用程序权限的日历事件。它完美地运作。现在我尝试设置订阅以监听事件更改,但正常的v1.0不支持此操作。不过,至少在说明中,beta表示它有效。
来自页面:https://graph.microsoft.io/en-us/docs/api-reference/beta/api/subscription_post_subscriptions
“注意:/ beta端点允许将应用程序权限作为大多数资源的预览功能。”
所以我用URL尝试了这个: https://graph.microsoft.com/beta/subscriptions
像这样发送json对象:
{ “一changeType”: “创建,更新,删除” “notificationUrl”: “HTTPS%3A%2F%2FXXX.com%2Fo365.php”, “资源”: “%2Fusers%2Fooom%40xxx.com%2Fevents” “clientState”: “1486588355561”, “expirationDateTime”: “2018-11-20T18:23:45.9356913Z” }
这样做我得到了结果:
{ “错误”:{ “code”:“BadRequest”, “message”:“找不到该段的资源'/users/room@xxx.com/events'。”, “innerError”:{ “request-id”:“d9ca58b1-ee1f-4072-81d5-0f1a25dcdd45”, “日期”:“2017-02-08T21:26:51” } } }
我在资源中尝试了所有类型的组合,但无法使其工作。 谁知道如何做到这一点?
答案 0 :(得分:0)
json属性的值不需要进行url编码。该资源在“用户”面前也不需要“/”(尽管这不是造成您问题的原因)。
尝试将您的JSON更改为:
{ “一changeType”: “创建,更新,删除” “notificationUrl”: “https://myurl.com/o365.php”, “资源”:“users/person@myemail.com/events” “clientState”: “1486588355561”, “expirationDateTime”: “2018-11-20T18:23:45.9356913Z” }
如果这不能解决问题,请随时回复。