1. OSS C SDK,是否支持在mac系统上运行?
解答:不支持。
截止本文撰写之际,官网文档基于OSS C SDK 3.6.0编写。
兼容性
对于3.*.*系列SDK:兼容。
对于 2.*.*系列SDK:
Windows兼容。
Linux接口兼容,链表(aos_list_t)遍历接口不兼容。
os_list_for_each_entry
aos_list_for_each_entry_reverse
aos_list_for_each_entry_safe
aos_list_for_each_entry_safe_reverse
对于 1.0.0 系列SDK:以下结构体和接口不兼容,其余都兼容。
oss_request_options_t
oss_get_object_to_buffer
oss_get_object_to_file
oss_get_object_to_buffer_by_url
oss_get_object_to_file_by_url
oss_init_multipart_upload
oss_complete_multipart_upload
对于 0.0.*系列SDK:不兼容。
详见官网说明:
https://help.aliyun.com/document_detail/32131.html
2. OSS C SDK里写死了获取系统时间,有什么方法可以替换掉采用系统时间的逻辑吗?
解答: SDK获取系统时间的方案是标准做法。如果用户有自定义设置时间的需求,OSS提供一个扩展的x-oss-date的自定义字段,可以通过用户来传入,OSS服务器端会优先采用x-oss-date。
OSS SDK签名时请求头支持x-oss-date,
允许用户指定签名时间,解决系统时间偏差导致签名出错的问题。
详见官网说明:
https://help.aliyun.com/document_detail/32175.html
3. IOS SDK里的 OSSPlainTextAKSKPairCredentialProvider是否已被废弃了?
解答:不建议再使用OSSPlainTextAKSKPairCredentialProvider。建议使用STS的方式。
STS是一个安全凭证(Token)的管理系统,用来授予临时的访问权限,
这样就可以通过STS来完成对于临时用户的访问授权。
关于STS的使用,详见官网文章:
《【权限管理-最佳实践】STS临时授权访问》
https://help.aliyun.com/document_detail/31935.html
4. Java SDK中的setRange(offsetBegin, offsetEnd)方法,如何设置从offsetBegin读到文件末尾?
解答:请通过设置offSetEnd=-1,来做到读到文件末尾。
如果指定的范围无效(比如开始或结束位置的指定值为负数,或指定值大于文件大小),则下载整个文件。
关于范围下载,详见官网说明:
https://help.aliyun.com/document_detail/84825.html