开发者社区> 问答> 正文

对象存储 OSS数据完整性校验

已解决

展开
收起
2018-02-18 03:26:28 910 0
1 条回答
写回答
取消 提交回答
  • 采纳回答

    详细解答可以参考官方帮助文档

    因为移动端网络环境的复杂性,数据在客户端和服务器之间传输时有可能会出错。因此OSS SDK提供了基于CRC的端到端的数据完整性效验。

    CRC校验在读取下载数据流的时候,如果开启了crc效验,会在数据流读取完毕后自动验证数据完整性。

    1. GetObjectRequest request = new GetObjectRequest(OSSTestConfig.ANDROID_TEST_BUCKET, testFile);
    2. //开启CRC效验
    3. request.setCRC64(OSSRequest.CRC64Config.YES);
    4. //....
    5. try{
    6. GetObjectResult result = oss.getObject(request);
    7. InputStream in = result.getObjectContent();
    8. ByteArrayOutputStream output = new ByteArrayOutputStream();
    9. byte[] buffer = new byte[BUFFER_SIZE];
    10. int len;
    11. while ((len = in.read(buffer)) > -1) {
    12. output.write(buffer, 0, len);
    13. }
    14. output.flush();
    15. in.close();
    16. }catch(ClientException e){
    17. //...
    18. }catch(InconsistentException e){
    19. //....
    20. }
    2018-02-23 03:22:28
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
OSS运维进阶实战手册 立即下载
《OSS运维基础实战手册》 立即下载
OSS运维基础实战手册 立即下载