小编Gal*_*tor的帖子

如何使用javascript从gmail api下载附件?

我正在创建一个使用gmail api阅读我的电子邮件的网络应用程序.所有方法都在工作(users.messages.list,users.messages.get等),并在console.log和我的页面HTML中显示.有一点我注意到我必须使用atob来解码body.data并在我的HTML中插入.现在我要下载或阅读为例附件file.docx,和我使用本例这里我注意到,我有过解码后的回调,但如果我这样做,有没有链接只下载或阅读,微软一些代码.如果我复制此代码并创建文档并粘贴它,则表示文件已损坏.

我的代码:

function getAttachments(messageID, parts, callback) {
    //console.log(parts);
    var attachId = parts.body.attachmentId;
    var request = gapi.client.gmail.users.messages.attachments.get({
        'id': attachId,
        'messageId': messageID,
        'userId': 'me'
    });
    request.execute(function (attachment) {
        callback(parts.filename, parts.mimeType, attachment);
    });
}

if (att.length > 0) {
    for (var i in att) {
        getAttachments(response.id, att[i], function (filename, mimeType, attachment) {
            console.clear();
            console.log(filename, mimeType, attachment);
            console.log(atob(attachment.data.replace(/-/g, '+').replace(/_/g, '/')));
            inline.append('<a href="" style="display: block">' + filename + '</a>');
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

UPDATE

我在这里找到了解决方案

javascript gmail-api

9
推荐指数
1
解决办法
3126
查看次数

标签 统计

gmail-api ×1

javascript ×1