Office 365 API 日历:新事件时推送数据 PHP
Office 365 API Calendar: push data when new event PHP
工具:
- Php(编程语言)
- MySQL 数据库(用于存储事件)
- Office 365 API(与 Office 365 中的日历交互)
我正在制作一个小系统,每 5 分钟从日历中读取一次事件并将它们显示在网页上。我通过每 5 分钟 <meta http-equiv="refresh" content="10">
自动刷新页面来实现这一点,当页面加载时它调用 API 来获取最新事件。
我选择了自动刷新率,因为我没有找到任何 possibility/setting 可以在创建新事件时将日历推送数据到我的网页。这样会更好,因为网页不必每 5 分钟刷新一次。
所以我的问题是:office 365 的日历是否可以向我的网页推送 data/generate 信号,以便它仅在日历有新事件时才刷新?如果不行,有没有其他方法可以实现?
感谢您的宝贵时间
另一种选择是使用 Notifications REST API,API 可用于订阅您的日历、邮箱和联系人中的更改。您可以获得顶级消息实体集合的通知、事件或联系人,下面的示例显示了如何订阅新事件:
POST https://outlook.office.com/api/v2.0/me/subscriptions HTTP/1.1
Content-Type: application/json
{
@odata.type:"#Microsoft.OutlookServices.PushSubscription",
Resource: "https://outlook.office.com/api/v2.0/me/events",
NotificationURL: "https://mywebhook.azurewebsites.net/api/send/myNotifyClient",
ChangeType: "Created",
ClientState: "c75831bd-fad3-4191-9a66-280a48528679"
}
当触发事件发生时,Office 365 通过 webhook 将通知推送到回调 URL。反过来,您的应用程序会根据您的业务逻辑采取行动,例如,根据更改更新您的本地缓存、相应的客户端视图或后端系统。
工具:
- Php(编程语言)
- MySQL 数据库(用于存储事件)
- Office 365 API(与 Office 365 中的日历交互)
我正在制作一个小系统,每 5 分钟从日历中读取一次事件并将它们显示在网页上。我通过每 5 分钟 <meta http-equiv="refresh" content="10">
自动刷新页面来实现这一点,当页面加载时它调用 API 来获取最新事件。
我选择了自动刷新率,因为我没有找到任何 possibility/setting 可以在创建新事件时将日历推送数据到我的网页。这样会更好,因为网页不必每 5 分钟刷新一次。
所以我的问题是:office 365 的日历是否可以向我的网页推送 data/generate 信号,以便它仅在日历有新事件时才刷新?如果不行,有没有其他方法可以实现?
感谢您的宝贵时间
另一种选择是使用 Notifications REST API,API 可用于订阅您的日历、邮箱和联系人中的更改。您可以获得顶级消息实体集合的通知、事件或联系人,下面的示例显示了如何订阅新事件:
POST https://outlook.office.com/api/v2.0/me/subscriptions HTTP/1.1
Content-Type: application/json
{
@odata.type:"#Microsoft.OutlookServices.PushSubscription",
Resource: "https://outlook.office.com/api/v2.0/me/events",
NotificationURL: "https://mywebhook.azurewebsites.net/api/send/myNotifyClient",
ChangeType: "Created",
ClientState: "c75831bd-fad3-4191-9a66-280a48528679"
}
当触发事件发生时,Office 365 通过 webhook 将通知推送到回调 URL。反过来,您的应用程序会根据您的业务逻辑采取行动,例如,根据更改更新您的本地缓存、相应的客户端视图或后端系统。