我遇到一些麻烦驱动SDK。 我想从我的谷歌硬盘中的所有文件占了我的应用程序。 我觉得我做的一切,该驱动器SDK文档告诉我做什么,但我每次去抓取文件时,我得到一个空数组返回...并没有错误。 我使用的SDK作为服务帐户,因此建立是一个有点不同。 我的网站的方式运行的Drupal。 这里是我的代码:
1)首先,我建立服务(这是命名函数体buildService()
$key = PATH_TO_KEY_FILE;
if (file_exists($key)) {
try {
$auth = new Google_AssertionCredentials(
SERVICE_ACCOUNT_EMAIL,
array(DRIVE_SCOPE),
$key);
$client = new Google_Client();
$client->setUseObjects(true);
$client->setAssertionCredentials($auth);
} catch (Exception $e) {
print "An error occurred: " . $e->getMessage();
}
return new Google_DriveService($client);
}
else{
return "can't find key file';
}
此块是完全没问题,我从Google_DriveService对象
2)另一边,我抓住了服务对象,并尝试列出的驱动文件:
$parameters = array();
$service = buildService(); //my function from step 1
$files = retrieveAllFiles($service, $parameters);
3)在此是在retrieveAllFiles
函数(直接从SDK文档):
function retrieveAllFiles($service, $parameters) {
$result = array();
$pageToken = NULL;
do {
try {
if ($pageToken) {
$parameters['pageToken'] = $pageToken;
}
$files = $service->files->listFiles($parameters);
$result = array_merge($result, $files->getItems());
$pageToken = $files->getNextPageToken();
} catch (Exception $e) {
print "An error occurred: " . $e->getMessage();
$pageToken = NULL;
}
} while ($pageToken);
return $result;
}
正如我所说的,我得到一个空的结果返回,没有错误,没有什么。
任何想法,为什么我的结果是空的?
任何帮助或建议,不胜感激。