- 支持新版分片上传
- 分片上传支持断点续传功能
- 现在上传不会再抛出
BucketIsMissing
异常 - 支持 Qiniu 鉴权算法,提供
Qiniu::Auth.authenticate_callback_request_v2
方法根据前缀判断验证鉴权正确性
- 移除 ruby 版本号约束
-
增加
Qiniu.establish_https_connection!
方法,使所有七牛请求都使用 HTTPS 协议,保证连接的安全性。 -
重构随 gem 附带的 example 中的代码,使用更简洁易用的 API。
-
移除
Qiniu::Config::DEFAULT_OPTIONS
,用户可以调用Qiniu::Config.settings
获取七牛配置。 -
移除
Qiniu.get
,Qiniu.download
和Qiniu::Storage.get
方法以及它们的batch
版本。 -
移除对于 Fixnum 的使用,支持 Ruby 2.4.x
- 支持多存储区域,部分 API 需要额外的 bucket 参数。#161
- 放弃支持过时的 Ruby 1.9、Ruby 2.0 和 JRuby 1.7。#149
- 更好地支持 Rails 4。
- 确保自动化测试在 CI 上完全通过,为下一步开发做准备。
- 添加 upload_buffer_with_put_policy() 方法,直接上传一块数据作为文件内容。#146
- 修正无法触发加载异常类的问题;修正 batch_move 参数未正确打包的问题。#142
- 为 Qiniu::Auth 添加验证七牛回调请求签名合法性的函数。#133
- 为 Qiniu::Auth 添加一个异常处理逻辑,在 Access Key 和 Secret Key 未正常设置(nil 值)的情况下给出正确提示。#126
- 将 mime-types 的依赖版本升级到 2.4.3 。 #113
- 为 put_with_put_policy() 添加 opts 参数,允许使用 :content_type 键指定上传文件的 mime type。 #111
- 调整上传host。 #103
- 添加 authorize_download_url_2 方法,对包含中文或其它 utf-8 字符的 Key 做下载授权。 #95
- 调整User Agent。 #94
- 为上传策略添加
persistentPipeline
参数,用于指明使用哪个命名转码队列。 #93
- 为/pfop接口添加
pipeline
参数,用于指明使用哪个命名转码队列。 #92 - 为authorize_download_url()添加
:fop
参数,用于生成含数据处理指令的授权下载URL。
- 去除已废弃的publish/unpublish接口。 #90 (#8143)
-
重写与授权相关的函数并归入Qiniu::Auth空间,原授权凭证生成类维持不变。
-
添加Qiniu::Storage::PutPolicy类和Qiniu::Storage#upload_with_put_policy方法,并推荐使用两者组合实现单文件上传。
- Qiniu::Storage所有上传接口返回第三个值raw_headers,类型为Hash,包含已解析的HTTP响应报文中的所有Header信息。
该返回值主要用于调试。当遇到难以理解或解释的错误时,请将其中的X-Log和X-Reqid两项信息通过邮件反馈给我们。
-
更新Qiniu::Storage所有上传接口的测试用例,打印HTTP响应Header信息。
-
删除过时的Qiniu::Storage#put_file方法和相关测试用例。
该方法调用的API已过时并逐步废弃,建议用户尽快迁移到Qiniu::Storage#upload_with_token_2方法上。
- 重新划分命名空间,存储相关归入Qiniu::Storage,数据处理相关归入Qiniu::Fop,杂项相关归入Qiniu::Misc。
Qiniu::RS.generate_download_token()
方法的:pattern
调整为必选项。
Qiniu::RS.generate_upload_token()
方法新增:callback_body
和return_url
选项。- 选项含义参考: http://developer.qiniu.com/docs/v6/api/reference/security/put-policy.html#put-policy-callback-body
Qiniu::RS.generate_upload_token()
方法新增:return_body
选项。
该选项(:return_body
)可设置文件上传成功后,执行七牛云存储规定的回调API,并以 JSON 响应格式返回其执行结果。参考 uploadToken 之 returnBody 说明。
增加为上传文件进行预转的选项,参见 uploadToken 之 asyncOps 说明
Qiniu::RS.generate_upload_token()
方法新增:async_options
选项用于进行预转操作。
增加文件复制/移动方法,包括批量复制/移动文件
Qiniu::RS.copy(source_bucket, source_key, target_bucket, target_key)
Qiniu::RS.move(source_bucket, source_key, target_bucket, target_key)
Qiniu::RS.batch_copy [source_bucket, source_key, target_bucket, target_key], ...
Qiniu::RS.batch_move [source_bucket, source_key, target_bucket, target_key], ...
确保单元测试里边用到的测试 Bucket 全局唯一
使得10多种不通的 Ruby 宿主环境能隔离互不影响地执行单元/集成测试
Ruby 宿主环境如下
1.8.7, 1.9.2, 1.9.3, jruby-18mode, jruby-19mode, rbx-18mode, rbx-19mode, ruby-head, jruby-head, ree
详见 https://travis-ci.org/qiniu/ruby-sdk
私有资源下载新版实现,添加 Qiniu::RS.generate_download_token() 方法。参考 downloadToken
fixed E701 error
断点续上传根据 mkblk 返回的 host 字段进行 bput 和 mkfile ,规避由于DNS智能解析造成的分布式并行块上传会出现上下文不连贯导致的 E701 问题。
allow images uploaded auto-orient.
允许图片上传成功后自动旋转。
参考:
2012-11-06
allow files uploaded auto callback some APIs (like imageInfo, exif, etc…), and add those APIs callback results as part of the custom data for POST biz-server.
允许上传文件(图片)成功后执行回调指定的 API (比如 imageInfo, exif 接口等),并将指定API的回调结果一并 POST 发送给客户方的业务服务器。
参考: