Как проверить, изменилось ли содержимое папки на диске Google?

Я хотел бы сделать кеширование для содержимого папки, поэтому будет круто, если я могу как-то получить информацию, если папка на Google Диске изменилась а затем очистить кэш. Есть ли способ для этого? Лучший в php.

0

Решение

Через некоторое время я пришел к этому хорошему решению:

function isGoogleDriveFolderContentUpdated($lastTime, $folderId, &$client)
{

$appsactivityService = new Google_Service_Appsactivity($client);

$optParams = array(
'source'           => 'drive.google.com',
'drive.ancestorId' => $folderId,
'pageSize'         => 1,
);

$results = $appsactivityService->activities->listActivities($optParams);

if (count($results->getActivities()) == 0) {

return 0;

} else {
$activities = $results->getActivities();
$activity = $activities[0];

$event = $activity->getCombinedEvent();
$activityTime = date(DateTime::RFC3339, $event->getEventTimeMillis() / 1000);

$lastTime = strtotime($lastTime);
$activityTime = strtotime($activityTime);

if ($activityTime > $lastTime) {
//folder content changed since last check
return 1;
}

return 0;
}

}

который можно использовать как:

echo isGoogleDriveFolderContentUpdated("2018-11-26T21:03:57+01:00" ,"1A9CXgB44F1khfDAzU4t0R322TWh", $client);

где первый аргумент — это дата и время последней проверки, второй идентификатор папки на диске Google и последняя ссылка для переменная клиента.
Также ваше приложение должно иметь область для: https://www.googleapis.com/auth/activity в противном случае вы получите ошибку.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector