google drive api v3 create folder fails silently

Viewed 1056

After successfully authenticating via OAuth with full scope:

https://www.googleapis.com/auth/drive` 

I create a folder according to the example in Creating a folder

   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;
      }
    });

The callback function is never invoked, no error in the console.

How can i find out what's going on?

2 Answers

The function gapi.client.drive.files.create({...}) returns a promise, so don't pass a callback function, but instead use a .then() block to execute the promise.

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);
);
Related