upyun 1.0.5 → 1.0.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 27f13c813d11dd28a2ff2208053b616773c423c1
4
- data.tar.gz: 3ce085cd227c44f2d6ddb9e6d5bbcea74f756c14
3
+ metadata.gz: 5a66fd1986e039bfa120d3ce923ab1809edd6c5a
4
+ data.tar.gz: cec146d124a0257d94540c4b23001d56b9589402
5
5
  SHA512:
6
- metadata.gz: a2c3510754b1c6565a8fa562ac4d761bc68419c5bd7d115fc7329f532630e3f1f9471bbaf7614c54c1fba6428998a15a7f573f7e8857c9df1a534176fdabc1b4
7
- data.tar.gz: ae4e7810041ae15e6537d510b260801d4e20d06aee8f0ca41aea103709c52c6652eb03b1a96b77b463ec7c5ba02fcbb6c7f05452d2b3425a3b7d91646d9a3c2d
6
+ metadata.gz: d8397e0d383e03a1574f47ed5ef1b18ce92ccc5b4ff3da243791b5dad47491c38136bbee8bf2adfcbb454ab6d743befb84c90b1535a19ce37db747e13aeb4f8e
7
+ data.tar.gz: 2760c52be9fb2be54d320c9b7064febc600163c98e888b6e47803b015670d4ad6d263a5c13838b520106a3a1e07ad5af526c629fcfd9227aa3d2a271aa48dedc
data/README.md CHANGED
@@ -39,15 +39,17 @@ $ gem install upyun
39
39
  ```ruby
40
40
  require 'upyun'
41
41
 
42
- upyun = Upyun::Rest.new('bucket', 'operator', 'password', 'options', 'endpoint')
42
+ upyun = Upyun::Rest.new(bucket, operator, password, options, endpoint)
43
43
  ```
44
44
  **参数**
45
45
 
46
- * `bucket`: UPYUN 空间名称
47
- * `operator`: 授权操作员帐号
48
- * `password`: 授权操作员密码
49
- * `options`: 连接选项,可用的选项见[RestClient::Resource](https://github.com/rest-client/rest-client/blob/master/lib/restclient/resource.rb), 默认设置超时时间 60s
50
- * `endpoint`(可选)(默认:`Upyun::ED_AUTO`): API接入点,可根据具体网络情况设置最优的接入点,详情见 [API 域名](http://docs.upyun.com/api/)
46
+ | 参数名 | 类型 | 可选 | 说明 |
47
+ |:-------------:|:--------:|-------:| ------------- |
48
+ | `bucket` | `String` | 必选 | UPYUN 空间名称|
49
+ | `operator` | `String` | 必选 | 授权操作员帐号|
50
+ | `password` | `String` | 必选 | 授权操作员密码|
51
+ | `options` | `Hash` | 可选 | 连接选项,可用的选项见[RestClient::Resource](https://github.com/rest-client/rest-client/blob/master/lib/restclient/resource.rb), 默认设置超时时间 60s |
52
+ | `endpoint` | `String` | 可选 | (默认:`Upyun::ED_AUTO`): API接入点,可根据具体网络情况设置最优的接入点,详情见 [API 域名](http://docs.upyun.com/api/) |
51
53
 
52
54
  其中 `endpoint` 可选值如下:
53
55
 
@@ -90,12 +92,17 @@ headers = {'Content-Type' => 'image/jpeg', 'x-gmkerl-type' => 'fix_width', 'x-gm
90
92
  upyun.put('/save/to/path', 'file or binary', headers)
91
93
  ```
92
94
 
93
- 其中, `/save/to/path` 和 `file or binary` 和默认上传方式中一致,`headers` 参数即为额外的可选 HTTP Header 参数,详情查阅 [Rest API](http://docs.upyun.com/api/rest_api/#_4)
95
+ 其中, `/save/to/path` 和 `file or binary` 和默认上传方式中一致,`headers` 参数即为额外的可选 HTTP Header 参数,
96
+ 详情查阅 [Rest API](http://docs.upyun.com/api/rest_api/#_4)
94
97
 
95
98
  **返回**
96
99
 
97
- 上传成功返回 `true`,失败返回一个 `Hash` 结构: `{request_id: request_id, error: {code: code, message: message}}`,
98
- 其中:
100
+ 上传成功:
101
+
102
+ * 如果是图片空间,返回图片原信息,如 `{:height=>629, :file_type=>"JPEG", :width=>440, :frames=>1}`
103
+ * 如果是其它空间,返回 `true`,
104
+
105
+ 失败返回一个 `Hash` 结构: `{request_id: request_id, error: {code: code, message: message}}`, 其中:
99
106
 
100
107
  * `request_id` 为本次请求的请求码,由 UPYUN 本台返回,可用该值查询 UPYUN 日志;
101
108
  * `code` 为又拍云返回的错误码;
@@ -126,13 +133,14 @@ file = upyun.get('/path/to/file')
126
133
  ##### 保存文件至本地
127
134
 
128
135
  ```ruby
129
- upyun.get('/path/to/file', 'saved/foo.png')
136
+ upyun.get('/path/to/file', 'saved/foo.png', headers)
130
137
  ```
131
138
 
132
139
  **参数**
133
140
 
134
141
  * `'/path/to/file'`: 文件在 UPYUN 空间中的路径
135
142
  * `saved/foo.png`: 文件本地保存路径
143
+ * `headers`: 指定下载时的头信息,默认为 `{}`
136
144
 
137
145
  **返回**
138
146
  下载成功返回获取的文件长度, 失败返回内容和上例一致。
data/lib/upyun/rest.rb CHANGED
@@ -39,8 +39,8 @@ module Upyun
39
39
  file.close if file.respond_to?(:close)
40
40
  end
41
41
 
42
- def get(path, savepath=nil)
43
- res = request(:get, path)
42
+ def get(path, savepath=nil, headers={})
43
+ res = request(:get, path, headers: headers)
44
44
  return res if res.is_a?(Hash) || !savepath
45
45
 
46
46
  dir = File.dirname(savepath)
data/lib/upyun/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Upyun
2
- VERSION = "1.0.5"
2
+ VERSION = "1.0.6"
3
3
  end
data/spec/upyun_spec.rb CHANGED
@@ -92,6 +92,11 @@ describe "Upyun Restful API Basic testing" do
92
92
  File.delete('./save.jpg')
93
93
  end
94
94
 
95
+ it "GET a file with Accept Header" do
96
+ expect(@upyun.get(@path, nil, {'Accept' => '*/*'})).to eq(@str)
97
+ end
98
+
99
+
95
100
  it "GET a not-exist file" do
96
101
  res = @upyun.get("/ruby-sdk/foo/#{String.random}/test-not-exist.jpg")
97
102
  expect(res.is_a?(Hash) && res[:error][:code] == 404)
@@ -193,8 +198,7 @@ describe "Form Upload", current: true do
193
198
  expect(res.keys).to include(:code, :message, :url, :time)
194
199
  expect(res[:code]).to eq(200)
195
200
  expect(res[:message]).to match(/ok/)
196
- now = Time.now
197
- expect(res[:url]).to eq("/#{now.year}/#{now.mon}/#{now.day}/upyun.jpg")
201
+ expect(res[:url]).to eq(Time.now.utc.strftime('/%Y/%m/%d/upyun.jpg'))
198
202
  end
199
203
 
200
204
  it "with file descriptor should success" do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: upyun
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.5
4
+ version: 1.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - jsvisa
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-03-08 00:00:00.000000000 Z
11
+ date: 2015-03-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client