prerender_rails 0.1.18 → 1.0.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
2
  SHA1:
3
- metadata.gz: 96510117cbfe7b8e22de6a2c2d5a51de8ba1cf8b
4
- data.tar.gz: d80b52c4c2d979b5edb62e5d5f0fe55e495a6ac8
3
+ metadata.gz: 8e0d8d570fa09648e8699e3dc8d287aaa04b3533
4
+ data.tar.gz: 7f67db5232b1fb6162599accc52a72763b44507b
5
5
  SHA512:
6
- metadata.gz: f8d559c579317d7202c950f863ff3ef41ec61c86345e2f7a78c2e371694c9dc96d2f3742935e30cc4c7880e86e9ed669a502e829c2322aa1964c46c1c66f5653
7
- data.tar.gz: 8684ff998dc6ba63a328d28b88066f8a23ca0e52759146db99dfdb5310339768da7349bca5648fc3bc62c11ae48bc3df0124a4439a89db9c141b895df848e182
6
+ metadata.gz: e58600d16c3f3b8515f0e969bafb3898a1ca06155dfefa0c4c0a81fa5688550067354b17dcf066ede4c8c544e83f92084fb193c2b186b6fa1f55573d24f3757b
7
+ data.tar.gz: efe97f906d1ea6ffb6a5dc741362291696d5eb26a8db26d8e915d0b0482cbafeb4cb7c26d1b4e1774ba9ef23325352184b56f32613a4504f3c4db2ff505fa53c
@@ -17,7 +17,9 @@ module Rack
17
17
  'linkedinbot',
18
18
  'embedly',
19
19
  'bufferbot',
20
- 'quora link preview'
20
+ 'quora link preview',
21
+ 'showyoubot',
22
+ 'outbrain'
21
23
  ]
22
24
 
23
25
  @extensions_to_ignore = [
@@ -133,11 +135,20 @@ module Rack
133
135
  def get_prerendered_page_response(env)
134
136
  begin
135
137
  url = URI.parse(build_api_url(env))
136
- headers = { 'User-Agent' => env['HTTP_USER_AGENT'] }
138
+ headers = {
139
+ 'User-Agent' => env['HTTP_USER_AGENT'],
140
+ 'Accept-Encoding' => 'gzip'
141
+ }
137
142
  headers['X-Prerender-Token'] = ENV['PRERENDER_TOKEN'] if ENV['PRERENDER_TOKEN']
138
143
  headers['X-Prerender-Token'] = @options[:prerender_token] if @options[:prerender_token]
139
144
  req = Net::HTTP::Get.new(url.request_uri, headers)
140
145
  response = Net::HTTP.start(url.host, url.port) { |http| http.request(req) }
146
+ if response['Content-Encoding'] == 'gzip'
147
+ response.body = ActiveSupport::Gzip.decompress(response.body)
148
+ response['Content-Length'] = response.body.length
149
+ response['Content-Encoding'] = ''
150
+ end
151
+ response
141
152
  rescue
142
153
  nil
143
154
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = "prerender_rails"
5
- spec.version = "0.1.18"
5
+ spec.version = "1.0.0"
6
6
  spec.authors = ["Todd Hooper"]
7
7
  spec.email = ["todd@prerender.io"]
8
8
  spec.description = %q{Rails middleware to prerender your javascript heavy pages on the fly by a phantomjs service}
metadata CHANGED
@@ -1,69 +1,69 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: prerender_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.18
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Todd Hooper
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-26 00:00:00.000000000 Z
11
+ date: 2014-04-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rack
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>='
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>='
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '1.3'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.3'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: webmock
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>='
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - '>='
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  description: Rails middleware to prerender your javascript heavy pages on the fly
@@ -74,8 +74,8 @@ executables: []
74
74
  extensions: []
75
75
  extra_rdoc_files: []
76
76
  files:
77
- - .gitignore
78
- - .travis.yml
77
+ - ".gitignore"
78
+ - ".travis.yml"
79
79
  - Gemfile
80
80
  - LICENSE.txt
81
81
  - README.md
@@ -94,17 +94,17 @@ require_paths:
94
94
  - lib
95
95
  required_ruby_version: !ruby/object:Gem::Requirement
96
96
  requirements:
97
- - - '>='
97
+ - - ">="
98
98
  - !ruby/object:Gem::Version
99
99
  version: '0'
100
100
  required_rubygems_version: !ruby/object:Gem::Requirement
101
101
  requirements:
102
- - - '>='
102
+ - - ">="
103
103
  - !ruby/object:Gem::Version
104
104
  version: '0'
105
105
  requirements: []
106
106
  rubyforge_project:
107
- rubygems_version: 2.0.3
107
+ rubygems_version: 2.2.2
108
108
  signing_key:
109
109
  specification_version: 4
110
110
  summary: Prerender your backbone/angular/javascript rendered application on the fly