java web 七牛云接口_如何使用HTTP API先分块,再分片上传到七牛云

在使用Java Web进行七牛云接口开发时,遇到通过HTTP API进行分块、分片上传大文件的问题。在上传过程中,当块即将完成时,出现错误提示'too many data to read, block capacity is 4194304 bytes, 4105031 byte(s) used'。开发者尝试调整分片大小并重新组织上传逻辑,但仍然遇到文件合并时的'sudden file size'错误。七牛云工程师建议参考SDK源码,但开发者指出Java SDK中未找到分片上传的实现,并请求提供成功调用分片上传的示例。" 124275409,9272975,使用jsmind创建自定义思维导图,"['javascript', 'css', 'js', 'html', '前端开发']
摘要由CSDN通过智能技术生成

附加信息:

false

上传空间: adrfiles

上传方式: 分片上传

liguo2018-09-04 10:50

分片上传文件,按照API REFERENCE中的【创建块】【上传片】【创建文件】三个接口,

素材:10M大小的文件 即1010241024 byte

1,为了清晰理解,使用物理切分,切分成100Kb大小的片

七牛返回:{

"ctx": "ujpuQjPLdjS1J6IK8OKHKAGWpcRsNRFRFe3f0lCUlpBmE8eSjVE_f08BvwNCYi1hYmNmLTQ0YzEtYTEzOC1jZWYxNTdkYTVlMzAtLQ0KkwAAHqYAABKWAAAB8gAAAd0AAAFbAAAGWgAACg8AACEAAADhkAEAAAAAAAAAQADhkAEAZWdJQUFIWl9qVnZabzBJQQ==",

"checksum": "2VO0sjb_-9F6i1bYTl1MS62IwVA=",

"crc32": 480655653,

"offset": 102625,

"host": "https://up-z2.qiniup.com",

"expired_at": 1536632669

}

3,上传第二片,

以此类推,每次上传片都使用上一次返回的ctx和nextchunkOffset构造url

问题,当前块即将传完的时候,报错

{

"error": "too many data to read, block capacity is 4194304 bytes, 4105031 byte(s) used"

}

附代码:

//块级控制信息

String ctx = "";

List ctxs = new ArrayList<>(10);

Long nextChunckOffset = 0L;

Long uploadedSize = 0L;

Long totalSize = 4194304L2+2097153L;

Integer index = 0;

File file = null;

Long chunkSize=1001024L;

//附加参数

StringMap params = new StringMap();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值