oauth 0.5.5 → 0.5.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +415 -0
- data/CODE_OF_CONDUCT.md +84 -0
- data/CONTRIBUTING.md +23 -0
- data/LICENSE +18 -17
- data/README.md +372 -0
- data/SECURITY.md +16 -0
- data/bin/oauth +2 -2
- data/lib/oauth/cli/authorize_command.rb +8 -10
- data/lib/oauth/cli/base_command.rb +9 -7
- data/lib/oauth/cli/query_command.rb +3 -3
- data/lib/oauth/cli/sign_command.rb +12 -15
- data/lib/oauth/cli.rb +19 -19
- data/lib/oauth/client/action_controller_request.rb +20 -21
- data/lib/oauth/client/em_http.rb +99 -99
- data/lib/oauth/client/helper.rb +33 -36
- data/lib/oauth/client/net_http.rb +30 -30
- data/lib/oauth/consumer.rb +90 -89
- data/lib/oauth/errors/unauthorized.rb +3 -1
- data/lib/oauth/errors.rb +3 -3
- data/lib/oauth/helper.rb +17 -13
- data/lib/oauth/oauth.rb +4 -4
- data/lib/oauth/oauth_test_helper.rb +4 -4
- data/lib/oauth/request_proxy/action_controller_request.rb +56 -53
- data/lib/oauth/request_proxy/action_dispatch_request.rb +8 -4
- data/lib/oauth/request_proxy/base.rb +136 -132
- data/lib/oauth/request_proxy/curb_request.rb +49 -43
- data/lib/oauth/request_proxy/em_http_request.rb +59 -49
- data/lib/oauth/request_proxy/jabber_request.rb +12 -9
- data/lib/oauth/request_proxy/mock_request.rb +4 -2
- data/lib/oauth/request_proxy/net_http.rb +63 -54
- data/lib/oauth/request_proxy/rack_request.rb +35 -31
- data/lib/oauth/request_proxy/rest_client_request.rb +53 -50
- data/lib/oauth/request_proxy/typhoeus_request.rb +51 -45
- data/lib/oauth/request_proxy.rb +3 -3
- data/lib/oauth/server.rb +10 -12
- data/lib/oauth/signature/base.rb +10 -9
- data/lib/oauth/signature/hmac/sha1.rb +4 -4
- data/lib/oauth/signature/hmac/sha256.rb +17 -0
- data/lib/oauth/signature/plaintext.rb +2 -2
- data/lib/oauth/signature/rsa/sha1.rb +5 -5
- data/lib/oauth/signature.rb +5 -5
- data/lib/oauth/token.rb +5 -5
- data/lib/oauth/tokens/access_token.rb +3 -3
- data/lib/oauth/tokens/consumer_token.rb +2 -2
- data/lib/oauth/tokens/request_token.rb +7 -8
- data/lib/oauth/tokens/server_token.rb +0 -1
- data/lib/oauth/version.rb +1 -1
- data/lib/oauth.rb +8 -6
- metadata +47 -99
- data/README.rdoc +0 -88
data/lib/oauth/token.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# this exists for backwards-compatibility
|
2
2
|
|
3
|
-
require
|
4
|
-
require
|
5
|
-
require
|
6
|
-
require
|
7
|
-
require
|
3
|
+
require "oauth/tokens/token"
|
4
|
+
require "oauth/tokens/server_token"
|
5
|
+
require "oauth/tokens/consumer_token"
|
6
|
+
require "oauth/tokens/request_token"
|
7
|
+
require "oauth/tokens/access_token"
|
@@ -43,7 +43,7 @@ module OAuth
|
|
43
43
|
# @response = @token.post('/people', nil, {'Accept' => 'application/xml' })
|
44
44
|
# @response = @token.post('/people', @person.to_xml, { 'Accept'=>'application/xml', 'Content-Type' => 'application/xml' })
|
45
45
|
#
|
46
|
-
def post(path, body =
|
46
|
+
def post(path, body = "", headers = {})
|
47
47
|
request(:post, path, body, headers)
|
48
48
|
end
|
49
49
|
|
@@ -55,7 +55,7 @@ module OAuth
|
|
55
55
|
# @response = @token.put('/people/123', nil, { 'Accept' => 'application/xml' })
|
56
56
|
# @response = @token.put('/people/123', @person.to_xml, { 'Accept' => 'application/xml', 'Content-Type' => 'application/xml' })
|
57
57
|
#
|
58
|
-
def put(path, body =
|
58
|
+
def put(path, body = "", headers = {})
|
59
59
|
request(:put, path, body, headers)
|
60
60
|
end
|
61
61
|
|
@@ -67,7 +67,7 @@ module OAuth
|
|
67
67
|
# @response = @token.patch('/people/123', nil, { 'Accept' => 'application/xml' })
|
68
68
|
# @response = @token.patch('/people/123', @person.to_xml, { 'Accept' => 'application/xml', 'Content-Type' => 'application/xml' })
|
69
69
|
#
|
70
|
-
def patch(path, body =
|
70
|
+
def patch(path, body = "", headers = {})
|
71
71
|
request(:patch, path, body, headers)
|
72
72
|
end
|
73
73
|
|
@@ -5,12 +5,12 @@ module OAuth
|
|
5
5
|
attr_reader :response
|
6
6
|
|
7
7
|
def self.from_hash(consumer, hash)
|
8
|
-
token =
|
8
|
+
token = new(consumer, hash[:oauth_token], hash[:oauth_token_secret])
|
9
9
|
token.params = hash
|
10
10
|
token
|
11
11
|
end
|
12
12
|
|
13
|
-
def initialize(consumer, token="", secret="")
|
13
|
+
def initialize(consumer, token = "", secret = "")
|
14
14
|
super(token, secret)
|
15
15
|
@consumer = consumer
|
16
16
|
@params = {}
|
@@ -2,19 +2,18 @@ module OAuth
|
|
2
2
|
# The RequestToken is used for the initial Request.
|
3
3
|
# This is normally created by the Consumer object.
|
4
4
|
class RequestToken < ConsumerToken
|
5
|
-
|
6
5
|
# Generate an authorization URL for user authorization
|
7
6
|
def authorize_url(params = nil)
|
8
|
-
return nil if
|
7
|
+
return nil if token.nil?
|
9
8
|
|
10
|
-
params = (params || {}).merge(:
|
9
|
+
params = (params || {}).merge(oauth_token: token)
|
11
10
|
build_url(consumer.authorize_url, params)
|
12
11
|
end
|
13
12
|
|
14
13
|
def authenticate_url(params = nil)
|
15
|
-
return nil if
|
14
|
+
return nil if token.nil?
|
16
15
|
|
17
|
-
params = (params || {}).merge(:
|
16
|
+
params = (params || {}).merge(oauth_token: token)
|
18
17
|
build_url(consumer.authenticate_url, params)
|
19
18
|
end
|
20
19
|
|
@@ -28,16 +27,16 @@ module OAuth
|
|
28
27
|
OAuth::AccessToken.from_hash(consumer, response)
|
29
28
|
end
|
30
29
|
|
31
|
-
|
30
|
+
protected
|
32
31
|
|
33
32
|
# construct an authorization or authentication url
|
34
33
|
def build_url(base_url, params)
|
35
34
|
uri = URI.parse(base_url.to_s)
|
36
35
|
queries = {}
|
37
36
|
queries = Hash[URI.decode_www_form(uri.query)] if uri.query
|
38
|
-
# TODO doesn't handle array values correctly
|
37
|
+
# TODO: doesn't handle array values correctly
|
39
38
|
queries.merge!(params) if params
|
40
|
-
uri.query = URI.encode_www_form(queries)
|
39
|
+
uri.query = URI.encode_www_form(queries) unless queries.empty?
|
41
40
|
uri.to_s
|
42
41
|
end
|
43
42
|
end
|
data/lib/oauth/version.rb
CHANGED
data/lib/oauth.rb
CHANGED
@@ -1,11 +1,13 @@
|
|
1
1
|
root = File.dirname(__FILE__)
|
2
2
|
$LOAD_PATH << root unless $LOAD_PATH.include?(root)
|
3
3
|
|
4
|
-
require
|
4
|
+
require "oauth/version"
|
5
5
|
|
6
|
-
require
|
6
|
+
require "oauth/oauth"
|
7
7
|
|
8
|
-
require
|
9
|
-
require
|
10
|
-
require
|
11
|
-
require
|
8
|
+
require "oauth/client/helper"
|
9
|
+
require "oauth/signature/plaintext"
|
10
|
+
require "oauth/signature/hmac/sha1"
|
11
|
+
require "oauth/signature/hmac/sha256"
|
12
|
+
require "oauth/signature/rsa/sha1"
|
13
|
+
require "oauth/request_proxy/mock_request"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: oauth
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pelle Braendgaard
|
@@ -12,13 +12,14 @@ authors:
|
|
12
12
|
- Seth Fitzsimmons
|
13
13
|
- Matt Sanford
|
14
14
|
- Aaron Quint
|
15
|
-
|
15
|
+
- Peter Boling
|
16
|
+
autorequire:
|
16
17
|
bindir: bin
|
17
18
|
cert_chain: []
|
18
|
-
date:
|
19
|
+
date: 2022-05-04 00:00:00.000000000 Z
|
19
20
|
dependencies:
|
20
21
|
- !ruby/object:Gem::Dependency
|
21
|
-
name:
|
22
|
+
name: curb
|
22
23
|
requirement: !ruby/object:Gem::Requirement
|
23
24
|
requirements:
|
24
25
|
- - ">="
|
@@ -32,21 +33,21 @@ dependencies:
|
|
32
33
|
- !ruby/object:Gem::Version
|
33
34
|
version: '0'
|
34
35
|
- !ruby/object:Gem::Dependency
|
35
|
-
name:
|
36
|
+
name: em-http-request
|
36
37
|
requirement: !ruby/object:Gem::Requirement
|
37
38
|
requirements:
|
38
|
-
- - "
|
39
|
+
- - "~>"
|
39
40
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
41
|
+
version: 1.1.7
|
41
42
|
type: :development
|
42
43
|
prerelease: false
|
43
44
|
version_requirements: !ruby/object:Gem::Requirement
|
44
45
|
requirements:
|
45
|
-
- - "
|
46
|
+
- - "~>"
|
46
47
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
48
|
+
version: 1.1.7
|
48
49
|
- !ruby/object:Gem::Dependency
|
49
|
-
name:
|
50
|
+
name: iconv
|
50
51
|
requirement: !ruby/object:Gem::Requirement
|
51
52
|
requirements:
|
52
53
|
- - ">="
|
@@ -60,21 +61,21 @@ dependencies:
|
|
60
61
|
- !ruby/object:Gem::Version
|
61
62
|
version: '0'
|
62
63
|
- !ruby/object:Gem::Dependency
|
63
|
-
name:
|
64
|
+
name: minitest
|
64
65
|
requirement: !ruby/object:Gem::Requirement
|
65
66
|
requirements:
|
66
67
|
- - ">="
|
67
68
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
69
|
+
version: '0'
|
69
70
|
type: :development
|
70
71
|
prerelease: false
|
71
72
|
version_requirements: !ruby/object:Gem::Requirement
|
72
73
|
requirements:
|
73
74
|
- - ">="
|
74
75
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
76
|
+
version: '0'
|
76
77
|
- !ruby/object:Gem::Dependency
|
77
|
-
name:
|
78
|
+
name: mocha
|
78
79
|
requirement: !ruby/object:Gem::Requirement
|
79
80
|
requirements:
|
80
81
|
- - ">="
|
@@ -89,20 +90,6 @@ dependencies:
|
|
89
90
|
version: '0'
|
90
91
|
- !ruby/object:Gem::Dependency
|
91
92
|
name: rack
|
92
|
-
requirement: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - "~>"
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '2.0'
|
97
|
-
type: :development
|
98
|
-
prerelease: false
|
99
|
-
version_requirements: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - "~>"
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '2.0'
|
104
|
-
- !ruby/object:Gem::Dependency
|
105
|
-
name: rack-test
|
106
93
|
requirement: !ruby/object:Gem::Requirement
|
107
94
|
requirements:
|
108
95
|
- - ">="
|
@@ -116,55 +103,21 @@ dependencies:
|
|
116
103
|
- !ruby/object:Gem::Version
|
117
104
|
version: '0'
|
118
105
|
- !ruby/object:Gem::Dependency
|
119
|
-
name:
|
120
|
-
requirement: !ruby/object:Gem::Requirement
|
121
|
-
requirements:
|
122
|
-
- - ">="
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
version: 0.9.12
|
125
|
-
- - "<="
|
126
|
-
- !ruby/object:Gem::Version
|
127
|
-
version: 1.1.0
|
128
|
-
type: :development
|
129
|
-
prerelease: false
|
130
|
-
version_requirements: !ruby/object:Gem::Requirement
|
131
|
-
requirements:
|
132
|
-
- - ">="
|
133
|
-
- !ruby/object:Gem::Version
|
134
|
-
version: 0.9.12
|
135
|
-
- - "<="
|
136
|
-
- !ruby/object:Gem::Version
|
137
|
-
version: 1.1.0
|
138
|
-
- !ruby/object:Gem::Dependency
|
139
|
-
name: typhoeus
|
106
|
+
name: rack-test
|
140
107
|
requirement: !ruby/object:Gem::Requirement
|
141
108
|
requirements:
|
142
109
|
- - ">="
|
143
110
|
- !ruby/object:Gem::Version
|
144
|
-
version: 0
|
111
|
+
version: '0'
|
145
112
|
type: :development
|
146
113
|
prerelease: false
|
147
114
|
version_requirements: !ruby/object:Gem::Requirement
|
148
115
|
requirements:
|
149
116
|
- - ">="
|
150
117
|
- !ruby/object:Gem::Version
|
151
|
-
version: 0
|
152
|
-
- !ruby/object:Gem::Dependency
|
153
|
-
name: em-http-request
|
154
|
-
requirement: !ruby/object:Gem::Requirement
|
155
|
-
requirements:
|
156
|
-
- - '='
|
157
|
-
- !ruby/object:Gem::Version
|
158
|
-
version: 0.2.11
|
159
|
-
type: :development
|
160
|
-
prerelease: false
|
161
|
-
version_requirements: !ruby/object:Gem::Requirement
|
162
|
-
requirements:
|
163
|
-
- - '='
|
164
|
-
- !ruby/object:Gem::Version
|
165
|
-
version: 0.2.11
|
118
|
+
version: '0'
|
166
119
|
- !ruby/object:Gem::Dependency
|
167
|
-
name:
|
120
|
+
name: rake
|
168
121
|
requirement: !ruby/object:Gem::Requirement
|
169
122
|
requirements:
|
170
123
|
- - ">="
|
@@ -178,21 +131,7 @@ dependencies:
|
|
178
131
|
- !ruby/object:Gem::Version
|
179
132
|
version: '0'
|
180
133
|
- !ruby/object:Gem::Dependency
|
181
|
-
name:
|
182
|
-
requirement: !ruby/object:Gem::Requirement
|
183
|
-
requirements:
|
184
|
-
- - "<"
|
185
|
-
- !ruby/object:Gem::Version
|
186
|
-
version: '2.0'
|
187
|
-
type: :development
|
188
|
-
prerelease: false
|
189
|
-
version_requirements: !ruby/object:Gem::Requirement
|
190
|
-
requirements:
|
191
|
-
- - "<"
|
192
|
-
- !ruby/object:Gem::Version
|
193
|
-
version: '2.0'
|
194
|
-
- !ruby/object:Gem::Dependency
|
195
|
-
name: codeclimate-test-reporter
|
134
|
+
name: rest-client
|
196
135
|
requirement: !ruby/object:Gem::Requirement
|
197
136
|
requirements:
|
198
137
|
- - ">="
|
@@ -206,45 +145,47 @@ dependencies:
|
|
206
145
|
- !ruby/object:Gem::Version
|
207
146
|
version: '0'
|
208
147
|
- !ruby/object:Gem::Dependency
|
209
|
-
name:
|
148
|
+
name: typhoeus
|
210
149
|
requirement: !ruby/object:Gem::Requirement
|
211
150
|
requirements:
|
212
151
|
- - ">="
|
213
152
|
- !ruby/object:Gem::Version
|
214
|
-
version:
|
153
|
+
version: 0.1.13
|
215
154
|
type: :development
|
216
155
|
prerelease: false
|
217
156
|
version_requirements: !ruby/object:Gem::Requirement
|
218
157
|
requirements:
|
219
158
|
- - ">="
|
220
159
|
- !ruby/object:Gem::Version
|
221
|
-
version:
|
160
|
+
version: 0.1.13
|
222
161
|
- !ruby/object:Gem::Dependency
|
223
|
-
name:
|
162
|
+
name: webmock
|
224
163
|
requirement: !ruby/object:Gem::Requirement
|
225
164
|
requirements:
|
226
|
-
- - "
|
165
|
+
- - "<="
|
227
166
|
- !ruby/object:Gem::Version
|
228
|
-
version:
|
167
|
+
version: 3.14.0
|
229
168
|
type: :development
|
230
169
|
prerelease: false
|
231
170
|
version_requirements: !ruby/object:Gem::Requirement
|
232
171
|
requirements:
|
233
|
-
- - "
|
172
|
+
- - "<="
|
234
173
|
- !ruby/object:Gem::Version
|
235
|
-
version:
|
236
|
-
description:
|
237
|
-
email: oauth-ruby@
|
174
|
+
version: 3.14.0
|
175
|
+
description:
|
176
|
+
email: oauth-ruby@googlegroups.com
|
238
177
|
executables:
|
239
178
|
- oauth
|
240
179
|
extensions: []
|
241
180
|
extra_rdoc_files:
|
242
|
-
- LICENSE
|
243
|
-
- README.rdoc
|
244
181
|
- TODO
|
245
182
|
files:
|
183
|
+
- CHANGELOG.md
|
184
|
+
- CODE_OF_CONDUCT.md
|
185
|
+
- CONTRIBUTING.md
|
246
186
|
- LICENSE
|
247
|
-
- README.
|
187
|
+
- README.md
|
188
|
+
- SECURITY.md
|
248
189
|
- TODO
|
249
190
|
- bin/oauth
|
250
191
|
- lib/oauth.rb
|
@@ -284,6 +225,7 @@ files:
|
|
284
225
|
- lib/oauth/signature.rb
|
285
226
|
- lib/oauth/signature/base.rb
|
286
227
|
- lib/oauth/signature/hmac/sha1.rb
|
228
|
+
- lib/oauth/signature/hmac/sha256.rb
|
287
229
|
- lib/oauth/signature/plaintext.rb
|
288
230
|
- lib/oauth/signature/rsa/sha1.rb
|
289
231
|
- lib/oauth/token.rb
|
@@ -293,11 +235,17 @@ files:
|
|
293
235
|
- lib/oauth/tokens/server_token.rb
|
294
236
|
- lib/oauth/tokens/token.rb
|
295
237
|
- lib/oauth/version.rb
|
296
|
-
homepage:
|
238
|
+
homepage: https://github.com/oauth-xx/oauth-ruby
|
297
239
|
licenses:
|
298
240
|
- MIT
|
299
|
-
metadata:
|
300
|
-
|
241
|
+
metadata:
|
242
|
+
bug_tracker_uri: https://github.com/oauth-xx/oauth-ruby/issues
|
243
|
+
changelog_uri: https://github.com/oauth-xx/oauth-ruby/blob/master/CHANGELOG.md
|
244
|
+
documentation_uri: https://rubydoc.info/github/oauth-xx/oauth-ruby/master
|
245
|
+
homepage_uri: https://github.com/oauth-xx/oauth-ruby
|
246
|
+
source_code_uri: https://github.com/oauth-xx/oauth-ruby
|
247
|
+
rubygems_mfa_required: 'true'
|
248
|
+
post_install_message:
|
301
249
|
rdoc_options: []
|
302
250
|
require_paths:
|
303
251
|
- lib
|
@@ -312,8 +260,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
312
260
|
- !ruby/object:Gem::Version
|
313
261
|
version: '0'
|
314
262
|
requirements: []
|
315
|
-
rubygems_version: 3.0.
|
316
|
-
signing_key:
|
263
|
+
rubygems_version: 3.0.3.1
|
264
|
+
signing_key:
|
317
265
|
specification_version: 4
|
318
266
|
summary: OAuth Core Ruby implementation
|
319
267
|
test_files: []
|
data/README.rdoc
DELETED
@@ -1,88 +0,0 @@
|
|
1
|
-
= Ruby OAuth
|
2
|
-
|
3
|
-
== Status
|
4
|
-
|
5
|
-
{<img src="https://travis-ci.org/oauth-xx/oauth-ruby.svg?branch=master" alt="Build Status" />}[https://travis-ci.org/oauth-xx/oauth-ruby]
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
== What
|
10
|
-
|
11
|
-
This is a RubyGem for implementing both OAuth clients and servers in Ruby applications.
|
12
|
-
|
13
|
-
See the OAuth specs http://oauth.net/core/1.0/
|
14
|
-
|
15
|
-
== Installing
|
16
|
-
|
17
|
-
sudo gem install oauth
|
18
|
-
|
19
|
-
The source code is now hosted on the OAuth GitHub Project http://github.com/oauth-xx/oauth-ruby
|
20
|
-
|
21
|
-
== The basics
|
22
|
-
|
23
|
-
This is a ruby library which is intended to be used in creating Ruby Consumer and Service Provider applications. It is NOT a Rails plugin, but could easily be used for the foundation for such a Rails plugin.
|
24
|
-
|
25
|
-
As a matter of fact it has been pulled out from an OAuth Rails GEM (https://rubygems.org/gems/oauth-plugin https://github.com/pelle/oauth-plugin) which now uses this gem as a dependency.
|
26
|
-
|
27
|
-
== Demonstration of usage
|
28
|
-
|
29
|
-
We need to specify the oauth_callback url explicitly, otherwise it defaults to "oob" (Out of Band)
|
30
|
-
|
31
|
-
callback_url = "http://127.0.0.1:3000/oauth/callback"
|
32
|
-
|
33
|
-
Create a new `OAuth::Consumer` instance by passing it a configuration hash:
|
34
|
-
|
35
|
-
oauth_consumer = OAuth::Consumer.new("key", "secret", :site => "https://agree2")
|
36
|
-
|
37
|
-
Start the process by requesting a token
|
38
|
-
|
39
|
-
request_token = oauth_consumer.get_request_token(:oauth_callback => callback_url)
|
40
|
-
|
41
|
-
session[:token] = request_token.token
|
42
|
-
session[:token_secret] = request_token.secret
|
43
|
-
redirect_to request_token.authorize_url(:oauth_callback => callback_url)
|
44
|
-
|
45
|
-
When user returns create an access_token
|
46
|
-
|
47
|
-
hash = { oauth_token: session[:token], oauth_token_secret: session[:token_secret]}
|
48
|
-
request_token = OAuth::RequestToken.from_hash(oauth_consumer, hash)
|
49
|
-
access_token = request_token.get_access_token
|
50
|
-
# For 3-legged authorization, flow oauth_verifier is passed as param in callback
|
51
|
-
# access_token = request_token.get_access_token(oauth_verifier: params[:oauth_verifier])
|
52
|
-
@photos = access_token.get('/photos.xml')
|
53
|
-
|
54
|
-
Now that you have an access token, you can use Typhoeus to interact with the OAuth provider if you choose.
|
55
|
-
|
56
|
-
require 'typhoeus'
|
57
|
-
require 'oauth/request_proxy/typhoeus_request'
|
58
|
-
oauth_params = {:consumer => oauth_consumer, :token => access_token}
|
59
|
-
hydra = Typhoeus::Hydra.new
|
60
|
-
req = Typhoeus::Request.new(uri, options) # :method needs to be specified in options
|
61
|
-
oauth_helper = OAuth::Client::Helper.new(req, oauth_params.merge(:request_uri => uri))
|
62
|
-
req.options[:headers].merge!({"Authorization" => oauth_helper.header}) # Signs the request
|
63
|
-
hydra.queue(req)
|
64
|
-
hydra.run
|
65
|
-
@response = req.response
|
66
|
-
|
67
|
-
|
68
|
-
== More Information
|
69
|
-
|
70
|
-
* RDoc: http://rdoc.info/github/oauth-xx/oauth-ruby/master/frames
|
71
|
-
* Mailing List/Google Group: http://groups.google.com/group/oauth-ruby
|
72
|
-
|
73
|
-
== How to submit patches
|
74
|
-
|
75
|
-
The source code is now hosted on the OAuth GitHub Project http://github.com/oauth-xx/oauth-ruby
|
76
|
-
|
77
|
-
To submit a patch, please fork the oauth project and create a patch with tests. Once you're happy with it send a pull request and post a message to the google group.
|
78
|
-
|
79
|
-
== License
|
80
|
-
|
81
|
-
This code is free to use under the terms of the MIT license.
|
82
|
-
|
83
|
-
== Contact
|
84
|
-
|
85
|
-
OAuth Ruby has been created and maintained by a large number of talented individuals.
|
86
|
-
The current maintainer is Aaron Quint (quirkey).
|
87
|
-
|
88
|
-
Comments are welcome. Send an email to via the OAuth Ruby mailing list http://groups.google.com/group/oauth-ruby
|