使用Web Service :: Dropbox上载大型文件

问题描述 投票:-2回答:1

有人可以给我一些示例代码,使用WebService::Dropbox模块上传大于1GB的文件吗?

我按照说明成功上传了不到150MB的文件,但我不明白如何上传更大的文件。

perl dropbox large-files
1个回答
2
投票

module documentation说这是关于update方法

不要使用它来上传大于150 MB的文件。而是使用upload_session / start创建上传会话。

这可能就是为什么你在提问中提到150MB的原因。

upload_session的文档有这个

通过upload_session API上传大文件

# File Handle  
my $content = IO::File->new('./mysql.dump', '<');  

my $result = $dropbox->upload_session($path, $content);  

my $result = $dropbox->upload_session($path, $content, {  
    mode => 'add',  
    autorename => JSON::true,  
    mute => JSON::false  
});

请注意,就像upload的文档一样,调用upload_session的两个示例是替代方案,如果您有特殊要求需要非默认选项值,则应选择第二个

也没有必要使用IO::File打开文件:标准的Perl open调用可以正常工作,你应该添加一个:raw层,无论你是否使用IO::File,像这样

open my $content, '<:raw', './mysql.dump' or die $!

也没有必要JSON::trueJSON::false:一个简单的10会做得很好

这与upload用例非常相似,你说你工作正常。你究竟遇到了什么问题?

© www.soinside.com 2019 - 2024. All rights reserved.