base-api-client 0.3.1.beta → 0.3.2.beta

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.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -0
  3. data/README.md +15 -13
  4. data/base-api-client.gemspec +3 -1
  5. data/config/client_secret.json +6 -6
  6. data/lib/base/api_client/client_secret.rb +13 -12
  7. data/lib/base/apis.rb +1 -0
  8. data/lib/base/apis/category.rb +7 -3
  9. data/lib/base/apis/delivery_company.rb +7 -3
  10. data/lib/base/apis/item.rb +7 -8
  11. data/lib/base/apis/item_category.rb +7 -3
  12. data/lib/base/apis/order.rb +7 -8
  13. data/lib/base/apis/saving.rb +7 -8
  14. data/lib/base/apis/search.rb +12 -19
  15. data/lib/base/apis/user.rb +7 -3
  16. data/lib/base/http.rb +4 -16
  17. data/spec/base/api_client/client_secret_spec.rb +65 -45
  18. data/spec/base/apis/category_spec.rb +2 -2
  19. data/spec/base/apis/delivery_company_spec.rb +2 -2
  20. data/spec/base/apis/{item_category.rb → item_category_spec.rb} +2 -2
  21. data/spec/base/apis/item_spec.rb +2 -2
  22. data/spec/base/apis/order_spec.rb +2 -2
  23. data/spec/base/apis/saving_spec.rb +2 -2
  24. data/spec/base/apis/search_spec.rb +38 -58
  25. data/spec/base/apis/user_spec.rb +2 -2
  26. data/spec/base/http_spec.rb +4 -52
  27. data/spec/fixtures/vcr_cassettes/category/index.yml +19 -21
  28. data/spec/fixtures/vcr_cassettes/client_secret/fetch_token_authorization_code.yml +40 -0
  29. data/spec/fixtures/vcr_cassettes/client_secret/fetch_token_refresh_token.yml +40 -0
  30. data/spec/fixtures/vcr_cassettes/delivery_company/index.yml +17 -19
  31. data/spec/fixtures/vcr_cassettes/item/index.yml +48 -12
  32. data/spec/fixtures/vcr_cassettes/item_category/detail.yml +19 -21
  33. data/spec/fixtures/vcr_cassettes/order/index.yml +17 -19
  34. data/spec/fixtures/vcr_cassettes/saving/index.yml +17 -19
  35. data/spec/fixtures/vcr_cassettes/search/request.yml +60 -67
  36. data/spec/fixtures/vcr_cassettes/user/me.yml +46 -9
  37. data/spec/spec_helper.rb +4 -2
  38. metadata +29 -5
@@ -11,8 +11,8 @@ RSpec.describe Base::Apis::Category do
11
11
  describe '#index' do
12
12
  let(:response) { VCR.use_cassette('category/index') { subject.index } }
13
13
 
14
- it 'contains code "200"' do
15
- expect(response.code).to eq '200'
14
+ it 'status is 200' do
15
+ expect(response.status).to eq 200
16
16
  end
17
17
 
18
18
  it '@body contains categories' do
@@ -13,8 +13,8 @@ RSpec.describe Base::Apis::DeliveryCompany do
13
13
  VCR.use_cassette('delivery_company/index') { subject.index }
14
14
  end
15
15
 
16
- it 'contains code "200"' do
17
- expect(response.code).to eq '200'
16
+ it 'status is 200' do
17
+ expect(response.status).to eq 200
18
18
  end
19
19
 
20
20
  it '@body contains information of the delivery companies' do
@@ -13,8 +13,8 @@ RSpec.describe Base::Apis::ItemCategory do
13
13
  VCR.use_cassette('item_category/detail') { subject.detail(2453256) }
14
14
  end
15
15
 
16
- it 'contains code "200"' do
17
- expect(response.code).to eq '200'
16
+ it 'status is 200' do
17
+ expect(response.status).to eq 200
18
18
  end
19
19
 
20
20
  it '@body contains categories' do
@@ -9,8 +9,8 @@ RSpec.describe Base::Apis::Item do
9
9
  VCR.use_cassette('item/index') { subject.index }
10
10
  end
11
11
 
12
- it 'contains code "200"' do
13
- expect(response.code).to eq '200'
12
+ it 'status is 200' do
13
+ expect(response.status).to eq 200
14
14
  end
15
15
 
16
16
  it '@body contains information of the items' do
@@ -11,8 +11,8 @@ RSpec.describe Base::Apis::Order do
11
11
  describe '#index' do
12
12
  let(:response) { VCR.use_cassette('order/index') { subject.index } }
13
13
 
14
- it 'contains code "200"' do
15
- expect(response.code).to eq '200'
14
+ it 'status is 200' do
15
+ expect(response.status).to eq 200
16
16
  end
17
17
 
18
18
  it '@body contains orders' do
@@ -11,8 +11,8 @@ RSpec.describe Base::Apis::Saving do
11
11
  describe '#index' do
12
12
  let(:response) { VCR.use_cassette('saving/index') { subject.index } }
13
13
 
14
- it 'contains code "200"' do
15
- expect(response.code).to eq '200'
14
+ it 'status is 200' do
15
+ expect(response.status).to eq 200
16
16
  end
17
17
 
18
18
  it '@body contains saving' do
@@ -3,79 +3,59 @@ require 'spec_helper'
3
3
  RSpec.describe Base::Apis::Search do
4
4
  let(:client_secret) { Base::APIClient::ClientSecret.new }
5
5
  subject { Base::Apis::Search.new client_secret }
6
- let(:query) { ' シャツ 綿' }
7
- let(:request_parameters) do
8
- { client_id: '623f75000821c16163ec570ca6469539',
9
- client_secret: 'e321f43620ac47bc92f83e766107d78c',
10
- q: query }
11
- end
6
+ let(:query) { 'blue black white' }
12
7
 
13
8
  describe '::new' do
14
9
  include_examples 'Base::Apis::Something.new'
15
10
  end
16
11
 
17
- describe '#request' do
18
- let(:response) do
19
- VCR.use_cassette('search/request') { subject.request(query) }
20
- end
21
-
22
- it 'contains code "200"' do
23
- expect(response.code).to eq '200'
24
- end
25
-
26
- it '@body contains searched items info' do
27
- expect(response.body).to match(/found/)
28
- expect(response.body).to match(/items/)
29
- expect(response.body).to match(/item_id/)
30
- expect(response.body).to match(/title/)
31
- expect(response.body).to match(/detail/)
32
- expect(response.body).to match(/price/)
33
- expect(response.body).to match(/stock/)
34
- expect(response.body).to match(/modified/)
35
- expect(response.body).to match(/shop_id/)
36
- expect(response.body).to match(/shop_name/)
37
- expect(response.body).to match(/shop_url/)
38
- expect(response.body).to match(/categories/)
12
+ describe '#generate_body' do
13
+ context 'without block' do
14
+ it 'returns basic body' do
15
+ expect(subject.generate_body(query)).to eq \
16
+ client_id: 'fake_search_client_id',
17
+ client_secret: 'fake_search_client_secret',
18
+ q: 'blue black white'
19
+ end
39
20
  end
40
- end
41
21
 
42
- describe '#request_parameters=' do
43
- it 'returns request_parameters' do
44
- client_secret = instance_double('Base::Apis::ClientSecret')
45
-
46
- client_secret.instance_variable_set(
47
- :@search_client_id,
48
- '623f75000821c16163ec570ca6469539')
49
-
50
- client_secret.instance_variable_set(
51
- :@search_client_secret,
52
- 'e321f43620ac47bc92f83e766107d78c')
53
-
54
- allow(subject).to receive(:client_secret) { client_secret }
55
-
56
- expect(subject).to respond_to(:request_parameters) do
57
- { client_id: '623f75000821c16163ec570ca6469539',
58
- client_secret: 'e321f43620ac47bc92f83e766107d78c',
59
- q: '白 シャツ 綿' }
22
+ context 'with block' do
23
+ it 'returns body with given parameters' do
24
+ expect(
25
+ subject.generate_body(query) do
26
+ {
27
+ start: 999,
28
+ size: 888,
29
+ fields: 'fake_field',
30
+ shop_id: 123 }
31
+ end
32
+ ).to eq \
33
+ client_id: 'fake_search_client_id',
34
+ client_secret: 'fake_search_client_secret',
35
+ q: 'blue black white',
36
+ start: 999,
37
+ size: 888,
38
+ fields: 'fake_field',
39
+ shop_id: 123
60
40
  end
61
-
62
- subject.send(:request_parameters=, '白 シャツ 綿')
63
41
  end
64
42
  end
65
43
 
66
- describe '#uri=' do
67
- it 'has instance variable @uri' do
68
- expect(subject).to respond_to(:uri)
44
+ describe '#request' do
45
+ let(:response) do
46
+ VCR.use_cassette('search/request') do
47
+ subject.request(query)
48
+ end
69
49
  end
70
50
 
71
- it 'returns an object of URI::HTTPS' do
72
- expect(subject.send(:uri=, request_parameters)).to \
73
- be_kind_of URI::HTTPS
51
+ it 'status is 200' do
52
+ expect(response.status).to eq 200
74
53
  end
75
54
 
76
- it 'return value to_s is uri like' do
77
- expect(subject.send(:uri=, request_parameters).to_s).to eq \
78
- 'https://api.thebase.in/1/search?client_id=623f75000821c16163ec570ca6469539&client_secret=e321f43620ac47bc92f83e766107d78c&q=%E7%99%BD+%E3%82%B7%E3%83%A3%E3%83%84+%E7%B6%BF'
55
+ it 'body contains query chars' do
56
+ query.split.each do |q|
57
+ expect(response.body).to match(/#{q}/)
58
+ end
79
59
  end
80
60
  end
81
61
  end
@@ -9,8 +9,8 @@ RSpec.describe Base::Apis::User do
9
9
  VCR.use_cassette('user/me') { subject.me }
10
10
  end
11
11
 
12
- it 'contains code "200"' do
13
- expect(response.code).to eq '200'
12
+ it 'status is 200' do
13
+ expect(response.status).to eq 200
14
14
  end
15
15
 
16
16
  it '@body contains information of the user' do
@@ -2,60 +2,12 @@ require 'spec_helper'
2
2
 
3
3
  RSpec.describe Base::HTTP do
4
4
  include Base::HTTP
5
- let(:uri) { URI.parse('https://api.thebase.in/1/categories?') }
6
- let(:header_parameter) { { 'Authorization' => 'Bearer 888access_token888' } }
7
5
 
8
6
  describe '#generate_uri' do
9
- it 'returns instance of URI' do
10
- expect(generate_uri('partial_path')).to be_kind_of URI
11
- end
12
-
13
- it 'returns uri' do
14
- %w(apple google/twitter facebook?).each do |partial_path|
15
- expect(generate_uri(partial_path)).to eq \
16
- URI.parse("https://api.thebase.in/1/#{partial_path}")
17
- end
18
- end
19
- end
20
-
21
- describe '#generate_request' do
22
- context 'no header_parameter is given' do
23
- it 'returns instance of Net::HTTP::Get' do
24
- expect(generate_request(uri)).to be_kind_of Net::HTTP::Get
25
- end
26
-
27
- it 'has header_parameter authorization' do
28
- expect(
29
- generate_request(uri)
30
- .instance_variable_get(:@header)['authorization']).to be_nil
31
- end
32
- end
33
-
34
- context 'header_parameter is given' do
35
- it 'returns instance of Net::HTTP::Get' do
36
- expect(generate_request(uri, header_parameter))
37
- .to be_kind_of Net::HTTP::Get
38
- end
39
-
40
- it 'has header_parameter authorization' do
41
- expect(
42
- generate_request(uri, header_parameter)
43
- .instance_variable_get(:@header)['authorization'])
44
- .to eq ['Bearer 888access_token888']
45
- end
46
- end
47
- end
48
-
49
- describe '#start' do
50
- let(:request) { generate_request(uri, header_parameter) }
51
- let(:response) { VCR.use_cassette('http/start') { start(request, uri) } }
52
-
53
- it 'response @code is "200"' do
54
- expect(response.code).to eq '200'
55
- end
56
-
57
- it 'response @body contains categories' do
58
- expect(response.body).to match(/categories/)
7
+ it 'returns request path for the API' do
8
+ expect(generate_uri('hello')).to eq 'https://api.thebase.in/1/hello'
9
+ expect(generate_uri('akeome')).to eq 'https://api.thebase.in/1/akeome'
10
+ expect(generate_uri('kotoyoro')).to eq 'https://api.thebase.in/1/kotoyoro'
59
11
  end
60
12
  end
61
13
  end
@@ -5,7 +5,7 @@ http_interactions:
5
5
  uri: https://api.thebase.in/1/oauth/token
6
6
  body:
7
7
  encoding: US-ASCII
8
- string: client_id=e0920d3fba627a5da4eaab4e8e9d43fc&client_secret=a7eae9a2903235465e9b43c1116e2046&code=614e48613d8f347eb00444a40fd9e47c&redirect_uri=http%3A%2F%2Flocalhost.local&refresh_token&search_client_id=623f75000821c16163ec570ca6469539&search_client_secret=a52ad8525921ca9a40fee47a38ca429d&grant_type=authorization_code
8
+ string: client_id=e0920d3fba627a5da4eaab4e8e9d43fc&client_secret=ad493e7ada7eb96a6f71d1ccb100966b&code=424b7207d4e838e0b9146cdbb6dd3d17&expires_at&redirect_uri=https%3A%2F%2Fpacific-thicket-66916.herokuapp.com%2Foauth2callback&access_token&refresh_token&search_client_id=623f75000821c16163ec570ca6469539&search_client_secret=214b4134022df8bf0230f5a077c772d9&grant_type=authorization_code
9
9
  headers:
10
10
  Accept-Encoding:
11
11
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
@@ -25,37 +25,35 @@ http_interactions:
25
25
  Content-Type:
26
26
  - application/json; charset=UTF-8
27
27
  Date:
28
- - Mon, 08 Feb 2016 13:51:52 GMT
28
+ - Sat, 05 Mar 2016 09:58:28 GMT
29
29
  Server:
30
30
  - Apache
31
31
  Vary:
32
- - Accept-Encoding,User-Agent
32
+ - Accept-Encoding
33
33
  Content-Length:
34
- - '132'
34
+ - '133'
35
35
  Connection:
36
36
  - keep-alive
37
37
  body:
38
38
  encoding: ASCII-8BIT
39
- string: '{"access_token":"cb502f8cd62733e805182af85dc86f5d","token_type":"bearer","expires_in":3600,"refresh_token":"8aa0c1d633af7f25909c689e49aab0a1"}'
39
+ string: '{"access_token":"1915e7e7aa315b8850411088366b6521","token_type":"bearer","expires_in":3600,"refresh_token":"9cbe90079607450dbc34289164abd9e2"}'
40
40
  http_version:
41
- recorded_at: Mon, 08 Feb 2016 13:51:53 GMT
41
+ recorded_at: Sat, 05 Mar 2016 09:58:28 GMT
42
42
  - request:
43
43
  method: get
44
44
  uri: https://api.thebase.in/1/categories
45
45
  body:
46
- encoding: US-ASCII
46
+ encoding: UTF-8
47
47
  string: ''
48
48
  headers:
49
- Authorization:
50
- - Bearer cb502f8cd62733e805182af85dc86f5d
51
- Accept-Encoding:
52
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
49
+ User-Agent:
50
+ - HTTPClient/1.0 (2.7.1, ruby 2.2.3 (2015-08-18))
53
51
  Accept:
54
52
  - "*/*"
55
- User-Agent:
56
- - Ruby
57
- Host:
58
- - api.thebase.in
53
+ Date:
54
+ - Sat, 05 Mar 2016 09:58:28 GMT
55
+ Authorization:
56
+ - Bearer 1915e7e7aa315b8850411088366b6521
59
57
  response:
60
58
  status:
61
59
  code: 200
@@ -64,18 +62,18 @@ http_interactions:
64
62
  Content-Type:
65
63
  - application/json; charset=UTF-8
66
64
  Date:
67
- - Mon, 08 Feb 2016 13:51:53 GMT
65
+ - Sat, 05 Mar 2016 09:58:28 GMT
68
66
  Server:
69
67
  - Apache
70
68
  Vary:
71
- - Accept-Encoding,User-Agent
69
+ - Accept-Encoding
72
70
  Content-Length:
73
- - '37'
71
+ - '107'
74
72
  Connection:
75
73
  - keep-alive
76
74
  body:
77
- encoding: ASCII-8BIT
78
- string: '{"categories":[]}'
75
+ encoding: UTF-8
76
+ string: '{"categories":[{"category_id":202132,"name":"\u9069\u5f53\u306a\u30ab\u30c6\u30b4\u30ea1","list_order":1}]}'
79
77
  http_version:
80
- recorded_at: Mon, 08 Feb 2016 13:51:53 GMT
78
+ recorded_at: Sat, 05 Mar 2016 09:58:28 GMT
81
79
  recorded_with: VCR 3.0.1
@@ -0,0 +1,40 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://api.thebase.in/1/oauth/token
6
+ body:
7
+ encoding: UTF-8
8
+ string: client_id=e0920d3fba627a5da4eaab4e8e9d43fc&client_secret=ad493e7ada7eb96a6f71d1ccb100966b&code=fd302831251087529c2b6a33ffb342c1&expires_at=2016-01-01+01%3A00%3A00+%2B0900&redirect_uri=https%3A%2F%2Fpacific-thicket-66916.herokuapp.com%2Foauth2callback&access_token=&refresh_token=&search_client_id=623f75000821c16163ec570ca6469539&search_client_secret=214b4134022df8bf0230f5a077c772d9&grant_type=authorization_code
9
+ headers:
10
+ User-Agent:
11
+ - HTTPClient/1.0 (2.7.1, ruby 2.2.3 (2015-08-18))
12
+ Accept:
13
+ - "*/*"
14
+ Date:
15
+ - Thu, 31 Dec 2015 15:00:00 GMT
16
+ Content-Type:
17
+ - application/x-www-form-urlencoded
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ Content-Type:
24
+ - application/json; charset=UTF-8
25
+ Date:
26
+ - Mon, 07 Mar 2016 15:46:56 GMT
27
+ Server:
28
+ - Apache
29
+ Vary:
30
+ - Accept-Encoding
31
+ Content-Length:
32
+ - '142'
33
+ Connection:
34
+ - keep-alive
35
+ body:
36
+ encoding: UTF-8
37
+ string: '{"access_token":"e6f400618d27cfa9d2b9287bc2aa1b30","token_type":"bearer","expires_in":3600,"refresh_token":"422682355fc4a892a432e6f8b78291aa"}'
38
+ http_version:
39
+ recorded_at: Thu, 31 Dec 2015 15:00:00 GMT
40
+ recorded_with: VCR 3.0.1
@@ -0,0 +1,40 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://api.thebase.in/1/oauth/token
6
+ body:
7
+ encoding: UTF-8
8
+ string: client_id=e0920d3fba627a5da4eaab4e8e9d43fc&client_secret=ad493e7ada7eb96a6f71d1ccb100966b&code=fd302831251087529c2b6a33ffb342c1&expires_at=2016-01-01+01%3A00%3A00+%2B0900&redirect_uri=https%3A%2F%2Fpacific-thicket-66916.herokuapp.com%2Foauth2callback&access_token=&refresh_token=&search_client_id=623f75000821c16163ec570ca6469539&search_client_secret=214b4134022df8bf0230f5a077c772d9&grant_type=authorization_code
9
+ headers:
10
+ User-Agent:
11
+ - HTTPClient/1.0 (2.7.1, ruby 2.2.3 (2015-08-18))
12
+ Accept:
13
+ - "*/*"
14
+ Date:
15
+ - Thu, 31 Dec 2015 15:00:00 GMT
16
+ Content-Type:
17
+ - application/x-www-form-urlencoded
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ Content-Type:
24
+ - application/json; charset=UTF-8
25
+ Date:
26
+ - Mon, 07 Mar 2016 15:46:57 GMT
27
+ Server:
28
+ - Apache
29
+ Vary:
30
+ - Accept-Encoding
31
+ Content-Length:
32
+ - '142'
33
+ Connection:
34
+ - keep-alive
35
+ body:
36
+ encoding: UTF-8
37
+ string: '{"access_token":"d80d2d2375ed403ce5290c4fc40d1e72","token_type":"bearer","expires_in":3600,"refresh_token":"60db56d2533b919655feb218786f003f"}'
38
+ http_version:
39
+ recorded_at: Thu, 31 Dec 2015 15:00:00 GMT
40
+ recorded_with: VCR 3.0.1
@@ -5,7 +5,7 @@ http_interactions:
5
5
  uri: https://api.thebase.in/1/oauth/token
6
6
  body:
7
7
  encoding: US-ASCII
8
- string: client_id=e0920d3fba627a5da4eaab4e8e9d43fc&client_secret=a7eae9a2903235465e9b43c1116e2046&code=614e48613d8f347eb00444a40fd9e47c&redirect_uri=http%3A%2F%2Flocalhost.local&refresh_token&search_client_id=623f75000821c16163ec570ca6469539&search_client_secret=a52ad8525921ca9a40fee47a38ca429d&grant_type=authorization_code
8
+ string: client_id=e0920d3fba627a5da4eaab4e8e9d43fc&client_secret=ad493e7ada7eb96a6f71d1ccb100966b&code=424b7207d4e838e0b9146cdbb6dd3d17&expires_at&redirect_uri=https%3A%2F%2Fpacific-thicket-66916.herokuapp.com%2Foauth2callback&access_token&refresh_token&search_client_id=623f75000821c16163ec570ca6469539&search_client_secret=214b4134022df8bf0230f5a077c772d9&grant_type=authorization_code
9
9
  headers:
10
10
  Accept-Encoding:
11
11
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
@@ -25,37 +25,35 @@ http_interactions:
25
25
  Content-Type:
26
26
  - application/json; charset=UTF-8
27
27
  Date:
28
- - Mon, 08 Feb 2016 14:05:30 GMT
28
+ - Sat, 05 Mar 2016 10:04:15 GMT
29
29
  Server:
30
30
  - Apache
31
31
  Vary:
32
- - Accept-Encoding,User-Agent
32
+ - Accept-Encoding
33
33
  Content-Length:
34
34
  - '132'
35
35
  Connection:
36
36
  - keep-alive
37
37
  body:
38
38
  encoding: ASCII-8BIT
39
- string: '{"access_token":"c1562962872fcc46ed717760a1be80f0","token_type":"bearer","expires_in":3600,"refresh_token":"1a6960aa77c94e419818012d54a564ef"}'
39
+ string: '{"access_token":"76ad743291eb22d5873852c52e434eaf","token_type":"bearer","expires_in":3600,"refresh_token":"b7e3e8cdddb101e1fbbb717f7c3eef99"}'
40
40
  http_version:
41
- recorded_at: Mon, 08 Feb 2016 14:05:31 GMT
41
+ recorded_at: Sat, 05 Mar 2016 10:04:15 GMT
42
42
  - request:
43
43
  method: get
44
44
  uri: https://api.thebase.in/1/delivery_companies
45
45
  body:
46
- encoding: US-ASCII
46
+ encoding: UTF-8
47
47
  string: ''
48
48
  headers:
49
- Authorization:
50
- - Bearer c1562962872fcc46ed717760a1be80f0
51
- Accept-Encoding:
52
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
49
+ User-Agent:
50
+ - HTTPClient/1.0 (2.7.1, ruby 2.2.3 (2015-08-18))
53
51
  Accept:
54
52
  - "*/*"
55
- User-Agent:
56
- - Ruby
57
- Host:
58
- - api.thebase.in
53
+ Date:
54
+ - Sat, 05 Mar 2016 10:04:15 GMT
55
+ Authorization:
56
+ - Bearer 76ad743291eb22d5873852c52e434eaf
59
57
  response:
60
58
  status:
61
59
  code: 200
@@ -64,22 +62,22 @@ http_interactions:
64
62
  Content-Type:
65
63
  - application/json; charset=UTF-8
66
64
  Date:
67
- - Mon, 08 Feb 2016 14:05:31 GMT
65
+ - Sat, 05 Mar 2016 10:04:15 GMT
68
66
  Server:
69
67
  - Apache
70
68
  Vary:
71
- - Accept-Encoding,User-Agent
69
+ - Accept-Encoding
72
70
  Content-Length:
73
- - '1068'
71
+ - '5089'
74
72
  Connection:
75
73
  - keep-alive
76
74
  body:
77
- encoding: ASCII-8BIT
75
+ encoding: UTF-8
78
76
  string: '{"delivery_companies":[{"delivery_company_id":1,"name":"\u30af\u30ed\u30cd\u30b3\u30e4\u30de\u30c8"},{"delivery_company_id":2,"name":"\u4f50\u5ddd\u6025\u4fbf"},{"delivery_company_id":32,"name":"\u30ec\u30bf\u30fc\u30d1\u30c3\u30af\u30e9\u30a4\u30c8(\u30ec\u30bf\u30fc\u30d1\u30c3\u30af360)"},{"delivery_company_id":33,"name":"\u30ec\u30bf\u30fc\u30d1\u30c3\u30af\u30d7\u30e9\u30b9(\u30ec\u30bf\u30fc\u30d1\u30c3\u30af510)"},{"delivery_company_id":4,"name":"\u3086\u3046\u30d1\u30c3\u30af"},{"delivery_company_id":58,"name":"\u3086\u3046\u30e1\u30fc\u30eb"},{"delivery_company_id":62,"name":"\u3086\u3046\u30d1\u30b1\u30c3\u30c8"},{"delivery_company_id":49,"name":"\u306f\u3053\uff22\uff2f\uff2f\uff2e"},{"delivery_company_id":76,"name":"\u30af\u30ea\u30c3\u30af\u30dd\u30b9\u30c8"},{"delivery_company_id":56,"name":"\u30e4\u30de\u30c8\u904b\u8f38"},{"delivery_company_id":12,"name":"\u30a8\u30b3\u914d"},{"delivery_company_id":25,"name":"FedEx"},{"delivery_company_id":14,"name":"EMS"},{"delivery_company_id":69,"name":"\u56fd\u969b\u66f8\u7559\u90f5\u4fbf"},{"delivery_company_id":3,"name":"\u65e5\u672c\u901a\u904b"},{"delivery_company_id":5,"name":"\u897f\u6fc3\u904b\u8f38"},{"delivery_company_id":6,"name":"\u798f\u5c71\u901a\u904b"},{"delivery_company_id":7,"name":"\u540d\u9244\u904b\u8f38"},{"delivery_company_id":8,"name":"\u65b0\u6f5f\u904b\u8f38"},{"delivery_company_id":9,"name":"\u30c8\u30ca\u30df\u904b\u8f38"},{"delivery_company_id":10,"name":"\u897f\u6b66\u904b\u8f38"},{"delivery_company_id":11,"name":"\u30c8\u30fc\u30eb(\u30d5\u30c3\u30c8\u30ef\u30fc\u30af)"},{"delivery_company_id":15,"name":"\u8fd1\u7269\u30ec\u30c3\u30af\u30b9"},{"delivery_company_id":17,"name":"\u4e45\u7559\u7c73\u904b\u9001"},{"delivery_company_id":18,"name":"\u66f8\u7559"},{"delivery_company_id":19,"name":"DHL"},{"delivery_company_id":20,"name":"\u30e4\u30de\u30c8\u30db\u30fc\u30e0\u30b3\u30f3\u30d3\u30cb\u30a8\u30f3\u30b9"},{"delivery_company_id":21,"name":"\u738b\u5b50\u904b\u9001"},{"delivery_company_id":22,"name":"\u672d\u5e4c\u901a\u904b"},{"delivery_company_id":23,"name":"\u7b2c\u4e00\u8ca8\u7269"},{"delivery_company_id":24,"name":"\u30a8\u30b9\u30e9\u30a4\u30f3"},{"delivery_company_id":13,"name":"\u30e1\u30fc\u30eb\u4fbf"},{"delivery_company_id":26,"name":"\u98db\u9a28\u904b\u8f38"},{"delivery_company_id":27,"name":"\u5ca1\u5c71\u770c\u8ca8\u7269"},{"delivery_company_id":28,"name":"PREX"},{"delivery_company_id":29,"name":"IUC\u682a\u5f0f\u4f1a\u793e"},{"delivery_company_id":30,"name":"\u95a2\u6771\u5373\u914d"},{"delivery_company_id":31,"name":"JSS\u3000EXPRESS"},{"delivery_company_id":34,"name":"JIT
79
77
  BOX \u30c1\u30e3\u30fc\u30bf\u30fc\u4fbf"},{"delivery_company_id":35,"name":"\u5c71\u967d\u81ea\u52d5\u8eca\u904b\u9001"},{"delivery_company_id":36,"name":"\u8352\u6728\u904b\u8f38"},{"delivery_company_id":37,"name":"\u4e5d\u5dde\u7523\u4ea4\u904b\u8f38"},{"delivery_company_id":38,"name":"\u4e2d\u8d8a\u904b\u9001"},{"delivery_company_id":39,"name":"\u4e09\u516b\u4e94\u901a\u904b"},{"delivery_company_id":40,"name":"\u677e\u5ca1\u6e80\u904b\u8f38"},{"delivery_company_id":41,"name":"\u65e5\u672c\u30c8\u30e9\u30c3\u30af"},{"delivery_company_id":42,"name":"\u738b\u5b50\u304f\u3073\u304d\u904b\u9001"},{"delivery_company_id":43,"name":"\u4e09\u8c4a\u4fbf"},{"delivery_company_id":44,"name":"\u672d\u6a3d\u904b\u8f38"},{"delivery_company_id":45,"name":"\u6fc3\u98db\u5009\u5eab\u904b\u8f38"},{"delivery_company_id":46,"name":"\u798f\u4e95\u8ca8\u7269\u81ea\u52d5\u8eca"},{"delivery_company_id":47,"name":"ZCE
80
78
  EXPRESS"},{"delivery_company_id":48,"name":"\u4f50\u5ddd\uff33\uff27\uff2c"},{"delivery_company_id":50,"name":"\u8c4a\u8208\u904b\u8f38"},{"delivery_company_id":51,"name":"S.F.
81
79
  Express"},{"delivery_company_id":52,"name":"AsiaX"},{"delivery_company_id":53,"name":"\u4fe1\u5dde\u540d\u9244\u904b\u8f38"},{"delivery_company_id":54,"name":"\u682a\u5f0f\u4f1a\u793eOCS"},{"delivery_company_id":55,"name":"\u65e5\u901a\u30c8\u30e9\u30f3\u30b9\u30dd\u30fc\u30c8"},{"delivery_company_id":57,"name":"\u56db\u56fd\u904b\u8f38"},{"delivery_company_id":59,"name":"\u30bb\u30a4\u30ce\u30fc\u30b9\u30fc\u30d1\u30fc\u30a8\u30af\u30b9\u30d7\u30ec\u30b9"},{"delivery_company_id":60,"name":"\u56fd\u969b\u7a7a\u8f38"},{"delivery_company_id":61,"name":"\u30d7\u30e9\u30b9
82
80
  \u30ed\u30b8\u30b9\u30c6\u30a3\u30af\u30b9\u682a\u5f0f\u4f1a\u793e"},{"delivery_company_id":66,"name":"\u5e38\u76e4\u904b\u8f38"},{"delivery_company_id":67,"name":"\u30d7\u30e9\u30b9\u30ab\u30fc\u30b4\u30b5\u30fc\u30d3\u30b9\uff08\u4e00\u822c\uff09"},{"delivery_company_id":68,"name":"\u30d7\u30e9\u30b9\u30ab\u30fc\u30b4\u30b5\u30fc\u30d3\u30b9\uff08\u5bb6\u5177\uff09"},{"delivery_company_id":70,"name":"\u6b66\u8535\u8ca8\u7269\u81ea\u52d5\u8eca"},{"delivery_company_id":71,"name":"\u30af\u30ed\u30cd\u30b3\u30e4\u30de\u30c8\u56fd\u969b\u5b85\u6025\u4fbf"},{"delivery_company_id":72,"name":"T.M.G"},{"delivery_company_id":73,"name":"\u30ab\u30c8\u30fc\u30ec\u30c3\u30af"},{"delivery_company_id":74,"name":"SBS\u5373\u914d\u4fbf"},{"delivery_company_id":65,"name":"\u30dd\u30b9\u30d1\u30b1\u30c3\u30c8"}]}'
83
81
  http_version:
84
- recorded_at: Mon, 08 Feb 2016 14:05:31 GMT
82
+ recorded_at: Sat, 05 Mar 2016 10:04:16 GMT
85
83
  recorded_with: VCR 3.0.1