首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Google Drive Api batching -获取多个文件上传的结果

Google Drive Api batching -获取多个文件上传的结果
EN

Stack Overflow用户
提问于 2017-07-19 05:39:07
回答 1查看 430关注 0票数 0

这个问题是在python的基础上提出的,但核心问题通常与Drive API有关。

我有以下python代码,用于上传部署批处理的多个文件:

代码语言:javascript
复制
batch = service.new_batch_http_request(callback=f_delete_file_batch_callback)
for item in files_list:
    filename = item.name
    file_metadata = {'title' : filename}
    fo = open(filename, "w+b")
    fo.write(item.file.read())
    media = MediaFileUpload(...)
    batch.add(service.files().insert(body=file_metadata, media_body=media))                              

http =  credential.authorize(httplib2.Http())
batch.execute(http = http)
uploaded_files = ... # Here's the question. How do I get new files?
return render(request, 'my_template.html', {'files': uploaded_files}

问题是,我不明白如何获取新上传的文件,以便将新行传递给ajax并在客户端呈现它们:

my_template.html:

代码语言:javascript
复制
{% for item in files.items %}
    <tr>
        <td>{{item.title}}</td>
        <td>{{item.modifiedDate}}</td>
    </tr>
{% endfor %}

javascript:

代码语言:javascript
复制
$.post(url, data, function(){
    $table.append(response)
});
EN

回答 1

Stack Overflow用户

发布于 2017-07-19 17:03:38

在内存中,批处理请求的响应是新创建文件的文件资源数组。实际上,它是一个多部分的mimetype,每个组件请求都有一个部分。

浏览一下python库(我讨厌这个库),它看起来像是有一个可选的构造函数回调函数,为每个正文部分调用。在本例中,您已经将其定义为callback=f_delete_file_batch_callback

所以,我希望每个插入的文件都有一个file对象来调用这个回调。

默认情况下,文件对象将只包含title、id和mimetype。如果需要modifiedDate,则需要将其(或*)添加到fields参数。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45177555

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档