php-Google API权限不足列出文件
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php-Google API权限不足列出文件,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1856字,纯文字阅读大概需要3分钟。
内容图文
![php-Google API权限不足列出文件](/upload/InfoBanner/zyjiaocheng/693/107bdc692aab4c66a1451a7e21d8d970.jpg)
我正在尝试创建一个应用程序,该应用程序(使用云端硬盘服务帐户)列出给定文件夹中的文件,并允许用户搜索这些文件的内容.我收到无法解释的403权限不足错误.
我已经编辑了Google API PHP Client Example的代码:
$client_id = '[REMOVED]'; //Client ID
$service_account_name = '[REMOVED]'; //Email Address
$key_file_location = 'key.p12'; //key.p12
$client = new Google_Client();
$client->setApplicationName("Client_Library_Examples");
service = new Google_Service_Drive($client);
if (isset($_SESSION['service_token'])) {
$client->setAccessToken($_SESSION['service_token']);
}
$key = file_get_contents($key_file_location);
$cred = new Google_Auth_AssertionCredentials(
$service_account_name,
array(
'https://www.googleapis.com/auth/drive',
'https://www.googleapis.com/auth/drive.file'
),
$key
);
$client->setAssertionCredentials($cred);
if ($client->getAuth()->isAccessTokenExpired()) {
$client->getAuth()->refreshTokenWithAssertion($cred);
}
$_SESSION['service_token'] = $client->getAccessToken();
$result = array();
$pageToken = NULL;
do {
try {
$parameters = array();
if ($pageToken) {
$parameters['pageToken'] = $pageToken;
}
$files = $service->files->listFiles($parameters);
$result = array_merge($result, $files->getItems());
$pageToken = $files->getNextPageToken();
} catch (Exception $e) {
echo "<br/>An error occurred: " . $e->getMessage();
$pageToken = NULL;
}
} while ($pageToken);
echo "<pre>";
print_r($result);
echo "</pre>";
echo "<br />Execution completed.";
确切的错误消息(上面的捕获中的$e-> getMessage())是调用GET https://www.googleapis.com/drive/v2/files的错误:(403)权限不足-我认为/ drive和/drive.file范围给了我所需的所有权限?
解决方法:
首先,快速注意一下:您正在同时请求Drive作用域和Drive.File作用域.后者是前者的子集,因此无需请求它.您应该删除“ https://www.googleapis.com/auth/drive.file”行.
至于权限不足,这是由于开发者控制台配置不正确造成的.您应该仔细检查是否已为此特定项目启用了API和SDK.
内容总结
以上是互联网集市为您收集整理的php-Google API权限不足列出文件全部内容,希望文章能够帮你解决php-Google API权限不足列出文件所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。