activestorage_qiniu 0.1.8 → 0.1.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -0
- data/activestorage_qiniu.gemspec +1 -1
- data/lib/active_storage/service/qiniu_service.rb +11 -3
- data/lib/activestorage_qiniu/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e68c12764193b4951801d033ce8694e1e4b9bc4d629dc7075ac3cd80a00ed57e
|
4
|
+
data.tar.gz: 8d802e023594ae828cd95f3185d907853bd037b21c3de338b2a7ce0b6a7e912b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c3ada0a19066d24b4669e472331103fcee46bcd1f6c21e7c10a128a52e8ea8a1a240a7d542edd906b1b89658395145fff800680dc88cc602ef3004c8c1e81676
|
7
|
+
data.tar.gz: 95ccd5d22f7fb1dfdb4a9c5c2a52a5d79698d79a53229e11c91f090f258b5aef34075943f39b4dd92f1d789bc45a84d93cd032942c7a4617f113a3e3f517a81c
|
data/README.md
CHANGED
@@ -29,6 +29,7 @@ you can set-up qiniu storage service through the generated <tt>config/storage.ym
|
|
29
29
|
bucket: <%= ENV['QINIU_BUCKET'] %>
|
30
30
|
domain: <%= ENV['QINIU_DOMAIN'] %>
|
31
31
|
protocol: <%= ENV.fetch("QINIU_PROTOCOL") { "http" } %>
|
32
|
+
bucket_private: <%= ENV['QINIU_BUCKET_PRIVATE'] || false %>
|
32
33
|
```
|
33
34
|
more options. https://github.com/qiniu/ruby-sdk/blob/master/lib/qiniu/auth.rb#L49
|
34
35
|
|
data/activestorage_qiniu.gemspec
CHANGED
@@ -24,6 +24,6 @@ Gem::Specification.new do |spec|
|
|
24
24
|
spec.add_development_dependency "rake", "~> 10.0"
|
25
25
|
spec.add_development_dependency "minitest", "~> 5.0"
|
26
26
|
|
27
|
-
spec.add_dependency 'rails', '~> 5.
|
27
|
+
spec.add_dependency 'rails', '~> 5.0'
|
28
28
|
spec.add_dependency 'qiniu', '~> 6.9'
|
29
29
|
end
|
@@ -24,12 +24,14 @@ module ActiveStorage
|
|
24
24
|
#
|
25
25
|
#
|
26
26
|
class Service::QiniuService < Service
|
27
|
-
attr_reader :bucket, :domain, :upload_options, :protocol
|
27
|
+
attr_reader :bucket, :domain, :upload_options, :protocol, :bucket_private
|
28
28
|
|
29
29
|
def initialize(access_key:, secret_key:, bucket:, domain:, **options)
|
30
30
|
@bucket = bucket
|
31
31
|
@domain = domain
|
32
32
|
@protocol = (options.delete(:protocol) || 'https').to_sym
|
33
|
+
bucket_private = options.delete(:bucket_private)
|
34
|
+
@bucket_private = bucket_private.nil? ? false : !!bucket_private
|
33
35
|
Qiniu.establish_connection! access_key: access_key,
|
34
36
|
secret_key: secret_key,
|
35
37
|
protocol: @protocol,
|
@@ -112,8 +114,14 @@ module ActiveStorage
|
|
112
114
|
"attname=#{attname}"
|
113
115
|
end
|
114
116
|
|
115
|
-
|
116
|
-
|
117
|
+
url = if bucket_private
|
118
|
+
expires_in = options[:expires_in] || url_expires_in
|
119
|
+
Qiniu::Auth.authorize_download_url_2(domain, key, schema: protocol, fop: fop, expires_in: expires_in)
|
120
|
+
else
|
121
|
+
url_encoded_key = CGI::escape(key)
|
122
|
+
"#{protocol}://#{domain}/#{url_encoded_key}"
|
123
|
+
end
|
124
|
+
|
117
125
|
payload[:url] = url
|
118
126
|
url
|
119
127
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activestorage_qiniu
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mycolorway
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2018-07-
|
12
|
+
date: 2018-07-27 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -59,14 +59,14 @@ dependencies:
|
|
59
59
|
requirements:
|
60
60
|
- - "~>"
|
61
61
|
- !ruby/object:Gem::Version
|
62
|
-
version: '5.
|
62
|
+
version: '5.0'
|
63
63
|
type: :runtime
|
64
64
|
prerelease: false
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
66
66
|
requirements:
|
67
67
|
- - "~>"
|
68
68
|
- !ruby/object:Gem::Version
|
69
|
-
version: '5.
|
69
|
+
version: '5.0'
|
70
70
|
- !ruby/object:Gem::Dependency
|
71
71
|
name: qiniu
|
72
72
|
requirement: !ruby/object:Gem::Requirement
|