2016-03-03 85 views
1

我正在将Outlook Office 365集成到我的Web应用程序中。如果日历中有任何创建/更新事件,我希望我的应用与Office 365保持同步。订阅我的日历中的更改,Office 365如何返回通知回叫?

目前我已经创建了单向同步过程,例如创建,更新,删除和获取日历中的所有事件。这些问题是:

  1. 如何使双向与Office 365为我们的应用程序同步?
  2. 如何创建通知订阅?
  3. 如何验证订阅的通知URL?

当我们认购通知回调,通过异常返回的消息,该通知URL https://webapp.com/notifications?validationtoken=MmJiM2QwMjYtNjAxYi验证失败。

问题是我们将如何验证Notification-ULR? 我在Window Azure上创建了应用程序,当我订阅时返回相同的错误消息。 我如何解决这个问题?认购

以下代码:

URL: https://outlook.office365.com/api/v2.0/me/subscriptions 

    json_object = { 
      "@odata.type":"#Microsoft.OutlookServices.PushSubscription", 
      "Resource":"https://outlook.office365.com/api/v2.0/Me/Events", 
      "NotificationURL":"https://webapp.com/notifications“, 
      "ChangeType":"Created, Updated, Deleted", 
      "ClientState":"36228645-58b5-4d73-98a6-1b9ac535680c" 
     } 

回答

0

https://dev.outlook.com/RestGettingStarted/Concepts/Webhooks

展望通知服务验证在预订请求的通知URL建立其如下实施新的订阅之前:

  1. Outlook通知服务向通知U发送POST RL: POST https://{notificationUrl}?validationtoken={TokenDefinedByService} ClientState: {Data sent in ClientState value in subscription request (if any)}

  2. 网络挂接服务必须提供与在其主体为5秒内型平纹/文本validationtoken值200响应。验证令牌是一个随机字符串,应该在响应中提供它之后由webhook丢弃。