我的谷歌硬盘中的文件列表

时间:2017-03-01 10:08:38

标签: google-drive-api google-apis-explorer

我正在编写PHP脚本,该脚本从我的Google云端硬盘文件夹中获取文件,并在我的网站上使用下载链接编写这些文件列表,但找不到从我的文件夹中获取文件的解决方案。我发现的每个解决方案都需要从用户注册,即查看页面并从他的google驱动器获取文件列表。任何人都可以帮我解决问题吗?

这是我的代码。

function printFilesInFolder($service, $folderId) {
  $pageToken = NULL;
  do {
    try {
      $parameters = array();
       $parameters = array(
        'q' => "'0B5NCdsbrL1VfQ00xY3pFS3BtOE0' in parents"
        );     
  $children = $service->files->listFiles($parameters);
  var_dump($children);
  foreach ($children->getFiles() as $child) {
    print 'File Id: ' . $child->getId();
  }
  $pageToken = $children->getNextPageToken();
} catch (Exception $e) {
  print "An error occurred: " . $e->getMessage();
  $pageToken = NULL;
}
  } while ($pageToken);
}

$client = new Google_Client();
$client->setApplicationName("Web client 1");
$client->setClientId('CLIENTID');
$client->setClientSecret('SECRET');
$client->setScopes(array('https://www.googleapis.com/auth/drive.file'));
$client->setRedirectUri('http://localhost/googledrive/drive/drive.php');

if (isset($_GET['code']) || (isset($_SESSION['access_token']) && $_SESSION['access_token'])) {
if (isset($_GET['code'])) {
    $client->authenticate($_GET['code']);
    $_SESSION['access_token'] = $client->getAccessToken();
} else
    $client->setAccessToken($_SESSION['access_token']);
$service = new Google_Service_Drive($client);
$ret = printFilesInFolder($service,"FOLDERID");
} else {
    $authUrl = $client->createAuthUrl();
    header('Location: ' . $authUrl);
    exit();
}

但我仍然没有得到正确的数据。

第二个想法是,我想在每次刷新页面时删除身份验证的需要,但我不知道该怎么做。

0 个答案:

没有答案