我对文件夹“ x”中的文件有一个gapi(v2)批处理请求。此文件夹可能具有分页的内容列表。
我尝试了将pageToken值设置为nextPageToken递归调用files.list api(如gapi v2文档中所示),但返回“无效令牌”。
var batch = gapi.client.newBatch();
var request = gapi.client.drive.files.list();
batch.add(request, {'id': 'mySearch');
batch.then(handleResponse);
function handleResponse(resp) {
// gets the first set of 100 files fine
console.log(resp.result['mySearch'].result.items); // prints array of 100
// handle nextPageToken here <- this is what I want to do
}
我需要文件夹“ x”中所有项目(例如435个)的数组。我该怎么办?
答案 0 :(得分:0)
文档指出,以下是导致“ Invalid Token”错误的可能原因:
Google云端硬盘应用应说明返回HTTP 401的API或 调用Drive API时的HTTP 403响应。这些错误可能 指示以下任何一项:
- 令牌到期。
- 令牌吊销。这将导致访问令牌和刷新令牌都停止工作。
- 令牌未获得所需范围的授权。
- 未使用OAuth 2.0协议正确授权请求。
令牌过期可以通过刷新凭证来处理。如果说 呼叫失败,并显示“无效凭据”错误,可能是该问题 用户已撤消访问权限。对于已撤消的访问权限和所有问题 除了令牌到期外,最好的补救方法是重定向用户 通过OAuth对话框重新授予访问权限。
然后,您可以签出this link来实现Files: list
方法的实现,以便对此进行相应的指导。
要享受Good Drive API的更多好处,您可以migrate升级到Drive API v3。
Drive API v3和v2之间的差异主要是对 字段名称和删除重复功能。