Google API PHP客户端:如何使用同步令牌在日历之间拉取更改的事件



只是为了说明,我想使用这里找到的Google Client PHP API来完成此操作。

我刚刚把所有的日历事件导入到我的个人网站。现在我想要同步我可能已经添加到Google日历上的事件。最理想的情况是,这将在页面加载时发生-我会检查我的最后一个同步令牌,将其与当前同步令牌进行比较,这将给我一个更改事件的列表。

我想错了吗?这就是我要做的:

// grab all of my events that have changed from the sync token provided
// to the current sync token now
$event_list = $service->events->listEvents('my_calendar_id');
$event_list->setNextSyncToken('my_old_calendar_sync_token);

所做的就是重写从第一个请求中检索到的同步令牌。阅读这里的API文档,有一段用Java指定的代码片段,显示了在执行请求之前设置的同步令牌,这可能是问题所在。

我甚至试过这样写:

$event_list = $service->events
    ->listEvents('my_calendar_id')
    ->setNextSyncToken('my_old_calendar_sync_token);

(很想知道将它们设置在同一行是否会在请求中被解释)

虽然不是通过我引用的API,但文档确实指定了可能通过这个GET请求:

GET /calendars/primary/events?maxResults=10&singleEvents=true&syncToken=CPDAlvWDx70CEPDAlvWDx

如何通过谷歌API PHP客户端实现相同的结果?

找到了。它在一个附加的选项数组中传递到listEvents中,如果你在代码中挖掘一点:

$event_list = $service->events->listEvents('my_calendar_id', ['syncToken' => 'my_old_calendar_sync_token']);

最新更新