我正在构建一个表单,用户可以在其中从Google云端硬盘上传文件。我有客户ID(免费帐户和付费帐户)。我正在使用Google Drive API,并尝试下载excel,文档和其他类型的文件。之前的file.get服务给了我结果,但是突然间它停止了给结果提供结果(仅适用于图纸和文档。对于其他类型的文件,我可以从API中看到正确的响应)。我每次都会收到以下消息。
未经身份验证的使用的每日限制已超过。继续使用需要注册。
尽管我正在使用httpClient服务在Drupal中编写代码,但我也使用curl对其进行了尝试。这是示例代码:
// $url is the response from Drive Picker API.
list($id, $orignal_name, $google_token) = explode('@@@', $url);
$headers = [
'Authorization' => 'Bearer ' . $google_token,
]';
$crl = curl_init();
$setopt_array = array(CURLOPT_URL => $remote_url, CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => $headers);
curl_setopt_array($crl, $setopt_array);
$response = curl_exec($crl);
curl_close($crl);
我不知道消息的含义。关于免费帐户吗?如果是这样,我尝试使用付费帐户(与之关联的信用卡)。
如果是关于域验证的,那么我做了一个窍门,首先,我验证了一个有效的域,并使用代理设置在本地网站上使用了该域名。
我知道我必须使用'file.export'API来下载文件,但是我需要file.get来获取文件的mimeType。我需要知道问题背后的确切原因是什么,以便可以使用Google Drive API下载文件。
答案 0 :(得分:0)
这个问题在SO上已经回答了很多次。
该错误表明您未在Drive请求中提供http Authorization
标头。这是由您的代码中的错误引起的。