[英]JavaScript Google Drive API V3 - Upload a file to a folder
[英]google drive api v3 create folder fails silently
通过完整范围的 OAuth 成功验证后:
https://www.googleapis.com/auth/drive`
我根据创建文件夹中的示例创建了一个文件夹
var fileMetadata = {
'name' : name,
'mimeType' : 'application/vnd.google-apps.folder',
// 'parents': [ parent ]
};
gapi.client.drive.files.create({
resource: fileMetadata,
fields: 'id'
}, function(err, file) {
if(err) {
// Handle error
console.log(err);
} else {
console.log('Folder Id: ', file.id);
return file.id;
}
});
回调函数永远不会被调用,控制台中没有错误。
我怎样才能知道发生了什么?
我最终使用了较低级别的gapi.client.request
方法,该方法工作可靠。
var body= {"name": name,
"mimeType": "application/vnd.google-apps.folder",
"parents": [parent.id]}
gapi.client.request({
'path': 'https://www.googleapis.com/drive/v3/files/',
'method': 'POST',
'body': body
}).then(function(jsonResp,rawResp) {
console.log(jsonResp)
if (jsonResp.status==200) {
callback(jsonResp.result)
}
})
函数gapi.client.drive.files.create({...})
返回一个承诺,所以不要传递回调函数,而是使用.then()
块来执行承诺。
var fileMetadata = {
'name': FILE_NAME,
'mimeType': FILE_MIME_TYPE,
// 'parents': [ parentFolderID ]
};
gapi.client.drive.files.create({
resource: fileMetadata,
fields: '*'
}).then(function(response) {
if (response.status === 200) {
var file = response.result;
console.log(file);
}
}).catch(function(error) {
console.error(error);
);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.