wechat-utils 0.1.4 → 0.2.0

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
- SHA1:
3
- metadata.gz: d3accb1b15c9131b5a29e7d1c6d4cf4a9d0bafe4
4
- data.tar.gz: c034c7b6b72977eadce7a4d27ffa84db4810fa0f
2
+ SHA256:
3
+ metadata.gz: 7aab203d0deeca0b338677d09c3f016b14c84a8ec7a6586c06590fe6ad0f863e
4
+ data.tar.gz: 55fdf426f53e85bfbaab90a523656ba7939823482d261f2e758078e378675441
5
5
  SHA512:
6
- metadata.gz: 7fe0fc89fdde7e8133c59f3238168d63f60615e920f118634163a3628b79feb9684e22d07451fc74d1e38c59ec837724f537ca5cc4f9845a13b4ff6f2d792287
7
- data.tar.gz: 11919d8a7562feccc23880e8299d07f9cf5fff0433e645b539367ba45899a93ef0e7bfbfdfde9eddcb125ddd98c659ef1de01282cbf902bac01b3ac9a80d418c
6
+ metadata.gz: d4973714a1ae14d2a41c45d0fd34abe7c2416f3cdb93ac9ea369160492c1f245a205a0ec5fd8e94a215336f2049846f1b2d3f26d36881fb458f29e5259e42965
7
+ data.tar.gz: 11b171dcef4a4799fd897b22cfc41ac268721cf9902f4998f70d136bc2a01145780ee36750d58bdaf5ef7c3d60fae1145063c3fcb268ecc563fb455f83551882
data/lib/wechat/utils.rb CHANGED
@@ -1,3 +1,4 @@
1
+ require 'json'
1
2
  require 'rest-client'
2
3
  require 'wechat/utils/version'
3
4
  require 'securerandom'
@@ -27,42 +28,41 @@ module Wechat
27
28
  "https://api.weixin.qq.com/sns/oauth2/access_token?#{hash_to_query query_parts}"
28
29
  end
29
30
 
30
- def fetch_openid_and_access_token app_id, app_secret, code
31
+ def fetch_openid_and_access_token app_id, app_secret, code, request_opts: {}
31
32
  url = create_oauth_url_for_openid app_id, app_secret, code
32
- response = get_request url
33
+ response = get_request url, request_opts
33
34
  return response['openid'], response['access_token'], response
34
35
  end
35
36
 
36
37
  # access_token is get from oauth
37
- def fetch_oauth_user_info access_token, openid
38
- get_request "https://api.weixin.qq.com/sns/userinfo?access_token=#{access_token}&openid=#{openid}&lang=zh_CN"
38
+ def fetch_oauth_user_info access_token, openid, request_opts: {}
39
+ get_request "https://api.weixin.qq.com/sns/userinfo?access_token=#{access_token}&openid=#{openid}&lang=zh_CN", request_opts
39
40
  end
40
41
 
41
42
  # access_token is the global token
42
- def fetch_user_info access_token, openid
43
- get_request "https://api.weixin.qq.com/cgi-bin/user/info?access_token=#{access_token}&openid=#{openid}&lang=zh_CN"
43
+ def fetch_user_info access_token, openid, request_opts: {}
44
+ get_request "https://api.weixin.qq.com/cgi-bin/user/info?access_token=#{access_token}&openid=#{openid}&lang=zh_CN", request_opts
44
45
  end
45
46
 
46
- def get_request url
47
+ def get_request url, extra_opts
47
48
  request_opts = {
48
49
  :url => url,
49
50
  :verify_ssl => false,
50
51
  :ssl_version => 'TLSv1',
51
52
  :method => 'GET',
52
53
  :headers => false,
53
- :open_timeout => 30,
54
54
  :timeout => 30
55
- }
55
+ }.merge(extra_opts)
56
56
  JSON.parse RestClient::Request.execute(request_opts).body
57
57
  end
58
58
 
59
- def fetch_jsapi_ticket access_token
60
- response = get_request "https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=#{access_token}&type=jsapi"
59
+ def fetch_jsapi_ticket access_token, request_opts: {}
60
+ response = get_request "https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=#{access_token}&type=jsapi", request_opts
61
61
  return response['ticket'], response
62
62
  end
63
63
 
64
- def fetch_global_access_token appid, secret
65
- response = get_request "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=#{appid}&secret=#{secret}"
64
+ def fetch_global_access_token appid, secret, request_opts: {}
65
+ response = get_request "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=#{appid}&secret=#{secret}", request_opts
66
66
  return response['access_token'], response
67
67
  end
68
68
 
@@ -1,5 +1,5 @@
1
1
  module Wechat
2
2
  module Utils
3
- VERSION = '0.1.4'
3
+ VERSION = '0.2.0'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wechat-utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oscar Jiang
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-08-05 00:00:00.000000000 Z
11
+ date: 2018-08-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -119,7 +119,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
119
119
  version: '0'
120
120
  requirements: []
121
121
  rubyforge_project:
122
- rubygems_version: 2.4.5
122
+ rubygems_version: 2.7.7
123
123
  signing_key:
124
124
  specification_version: 4
125
125
  summary: wechat api for remote calls