我正在 PHP 站点中实现 Google Picker。我可以从 Google Picker API 获取文件 ID,也可以使用 JavaScript 下载文件。以下是我在 setCallback(pickerCallback) 函数中调用的回调函数。
function pickerCallback(data) {
if (data.action == google.picker.Action.PICKED) {
var fileId = data.docs[0].id;
document.getElementById('googleFileId').value = fileId;
var name = data.docs[0].name;
var url = data.docs[0].url;
var accessToken = gapi.auth.getToken().access_token;
var request = new XMLHttpRequest();
request.open('GET', 'https://www.googleapis.com/drive/v2/files/' + fileId);
request.setRequestHeader('Authorization', 'Bearer ' + accessToken);
request.addEventListener('load', function() {
var item = JSON.parse(request.responseText);
window.open(item.webContentLink,"_self"); //Download file in Client Side
});
request.send();
}
var message = 'File ID of choosen file : ' + fileId;
document.getElementById('result').innerHTML = message;
}
我可以将文件 ID 传递给 PHP,但要下载文件,我必须再次进行身份验证。任何人都可以帮助如何在 PHP 中进行文件下载吗?
Google Developers 页面中有一个管理下载帮助,但它不适用于我https://developers.google.com/drive/web/manage-downloads。
发现了一个与此类似的问题,但没有回答如何在从 google picker 选择文件后立即在后端下载文件中下载文件。