如何使用 Javascript 将 plain/text 文件上传到 google 驱动器?

How to upload a plain/text file to google drive using Javascript?

如何将此 blob 文件上传到 Google 驱动器文件夹,我的文件夹 ID 为:

var blob = new Blob([credentialText], {
    type: "text/plain;charset=utf-8;",
});

文档看起来很不清楚。我已经检查了这个 link 但没有关于如何发出请求的示例......我还检查了 CORS 请求但没有帮助。我迷路了:(

提前致谢。

我试过了,确实有效:

var createFile = function(name,text,parentId) {
    var auth_token = $rootScope.accessToken;

    const boundary = '-------314159265358979323846';
    const delimiter = "\r\n--" + boundary + "\r\n";
    const close_delim = "\r\n--" + boundary + "--";
    var mimeType = 'text/plain';
    var metadata = { 
      "name" : name,
      "mimeType": 'text/plain',
      "parents": [parentId]
    };  

    var multipartRequestBody =
    delimiter +  'Content-Type: application/json\r\n\r\n' +
    JSON.stringify(metadata) +
    delimiter + 'Content-Type: application/json\r\n\r\n' +
    text +
    close_delim;

    gapi.client.request({ 
        'path': '/upload/drive/v3/files/',
        'method': 'POST',
        'params': {'uploadType': 'multipart'},
        'headers': { 'Content-Type': 'multipart/form-data; boundary="' + boundary + '"', 'Authorization': 'Bearer ' + auth_token, },
        'body': multipartRequestBody 
    }).execute(function(file) { 
        console.log(file);
        console.log("Wrote to file " + file.name + " id: " + file.id); 
    }, function(error){
        console.log(error);
    }); 
}

在深入研究了前两个问题 (here and ) 之后,我找到了部分结合这些问题的解决方案:

var createTxtFile = function(name,text,parentId) {
    var auth_token = $rootScope.accessToken;

    const boundary = '-------314159265358979323846';
    const delimiter = "\r\n--" + boundary + "\r\n";
    const close_delim = "\r\n--" + boundary + "--";
    const mimeType = 'text/plain';

    var metadata = { 
      "name" : name,
      "mimeType": mimeType,
      "parents": [parentId]
    };  

    var multipartRequestBody =
    delimiter +  'Content-Type: application/json\r\n\r\n' +
    JSON.stringify(metadata) +
    delimiter + 'Content-Type:'+ mimeType+'\r\n\r\n' +
    text +
    close_delim;

    gapi.client.request({ 
        'path': '/upload/drive/v3/files/',
        'method': 'POST',
        'params': {'uploadType': 'multipart'},
        'headers': { 'Content-Type': 'multipart/mixed; boundary="' + boundary + '"', 'Authorization': 'Bearer ' + auth_token, },
        'body': multipartRequestBody 
    }).execute(function(file) { 
        console.log(file);
        console.log("Wrote to file " + file.name + " id: " + file.id); 
    }, function(error){
        console.log(error);
    }); 
}