ly-zizhuyou 0.1.3 → 0.1.4
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/lib/ly/zizhuyou/version.rb +1 -1
- data/lib/ly/zizhuyou.rb +10 -44
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5b51501a4aed4588689d2214cf955bb0f656a2c8
|
4
|
+
data.tar.gz: f56f9ef171f4c30064eb0d47f1fa6415a777d000
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 63271d8eaa17bc9bcbe293a61d82f6bf448d9cffc19d14d15bac63b5197a9dffc3c9b0c09371fc84494aa75fd3233ee1d637b51a32366018ad2f651176d767d2
|
7
|
+
data.tar.gz: b475287cd5d6b71fef5562cd80e710eb7864016bc46bd874bf2e4ba37d60c56980e0dcae67e70c93b3e36e6bd8243970b18d9a4efefc52a1a198a08e454646cc
|
data/lib/ly/zizhuyou/version.rb
CHANGED
data/lib/ly/zizhuyou.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
|
-
require
|
2
|
-
require
|
3
|
-
require
|
4
|
-
require
|
1
|
+
require 'ly/zizhuyou/version'
|
2
|
+
require 'net/http'
|
3
|
+
require 'uri'
|
4
|
+
require 'digest/md5'
|
5
5
|
require 'json'
|
6
6
|
|
7
7
|
module Ly
|
@@ -18,23 +18,17 @@ module Ly
|
|
18
18
|
@api_host = api_host
|
19
19
|
end
|
20
20
|
|
21
|
-
def params(params, delimiter = '&')
|
22
|
-
Hash[params.sort].map { |k, v| "#{k}=#{v}" }.join(delimiter)
|
23
|
-
end
|
24
|
-
|
25
21
|
def fingerprint(params)
|
26
|
-
|
27
|
-
md5.update @access_id + @security_id + params(params, '')
|
28
|
-
md5.hexdigest
|
22
|
+
Digest::MD5.hexdigest @access_id + @security_id + Hash[params.sort].map { |k, v| "#{k}=#{v}" }.join
|
29
23
|
end
|
30
24
|
|
31
25
|
def request(api_name, params = {})
|
32
|
-
url = URI(@req_url =
|
33
|
-
http = Net::HTTP.
|
26
|
+
url = URI(@req_url = '%s/zizhuyou/standard/1.0/%s?style=json' % [@api_host, api_name])
|
27
|
+
http = Net::HTTP.start(url.host, url.port)
|
34
28
|
request = Net::HTTP::Post.new(url)
|
35
|
-
request[
|
36
|
-
request[
|
37
|
-
request[
|
29
|
+
request['X-ACCESS-ID'] = @access_id
|
30
|
+
request['X-FINGERPRINT'] = fingerprint(params)
|
31
|
+
request['Content-Type'] = 'application/x-www-form-urlencoded'
|
38
32
|
request.body = @req_data = URI.encode_www_form(params)
|
39
33
|
response = http.request(request)
|
40
34
|
raise RequestError, "HTTP Response: #{response.code} #{response.message}" unless response.is_a?(Net::HTTPSuccess)
|
@@ -42,34 +36,6 @@ module Ly
|
|
42
36
|
raise Error.new result['err_msg'], result['ret_code'] unless result['ret_code'] == '200'
|
43
37
|
result['result']
|
44
38
|
end
|
45
|
-
|
46
|
-
# resource_index_info_list(params = {})
|
47
|
-
#
|
48
|
-
# 获取酒店和房型 ID 列表接口
|
49
|
-
def resource_index_info_list(params = {})
|
50
|
-
request('ResourceIndexInfoList', params)
|
51
|
-
end
|
52
|
-
|
53
|
-
# get_increment_resource_list(start_time, end_time, increment_type)
|
54
|
-
#
|
55
|
-
# 获取增量酒店&房型 id 列表接口
|
56
|
-
def get_increment_resource_list(start_time, end_time, increment_type)
|
57
|
-
request('ResourceIndexInfoList', StartTime: start_time.strftime('%Y-%m-%d %H:%M:%S'), EndTime: end_time.strftime('%Y-%m-%d %H:%M:%S'), IncrementType: increment_type)
|
58
|
-
end
|
59
|
-
|
60
|
-
# get_resource_detail_info(res_id, request_content, pro_id = nil, source_form = nil)
|
61
|
-
#
|
62
|
-
# 获取酒店商品详情接口
|
63
|
-
def get_resource_detail_info(res_id, request_content, pro_id = nil, source_form = nil)
|
64
|
-
request('GetResourceDetailInfo', {ResId: res_id, RequestContent: request_content, ProId: pro_id, SourceForm: source_form}.compact)
|
65
|
-
end
|
66
|
-
|
67
|
-
# resource_sale_info_calendar(params = {})
|
68
|
-
#
|
69
|
-
# 获取酒店价格库存接口
|
70
|
-
def resource_sale_info_calendar(params = {})
|
71
|
-
request('ResourceSaleInfoCalendar', params)
|
72
|
-
end
|
73
39
|
end
|
74
40
|
|
75
41
|
class RequestError < StandardError;
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ly-zizhuyou
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Xiao Jie
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-03-
|
11
|
+
date: 2017-03-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -112,7 +112,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
112
112
|
version: '0'
|
113
113
|
requirements: []
|
114
114
|
rubyforge_project:
|
115
|
-
rubygems_version: 2.6.
|
115
|
+
rubygems_version: 2.6.11
|
116
116
|
signing_key:
|
117
117
|
specification_version: 4
|
118
118
|
summary: LY.com zizhuyou API
|