hashbang 1.0.1 → 1.0.2
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.
data/hashbang.gemspec
CHANGED
@@ -8,4 +8,9 @@ $: << Bundler.load.specs.find{|s| s.name == 'hashbang' }.full_gem_path + '/lib'
|
|
8
8
|
require 'hashbang'
|
9
9
|
require 'hashbang/standalone/middleware'
|
10
10
|
|
11
|
-
|
11
|
+
app = Rack::Builder.app do
|
12
|
+
use Rack::ShowExceptions
|
13
|
+
run Hashbang::Standalone::Middleware.new(File.expand_path('..', __FILE__))
|
14
|
+
end
|
15
|
+
|
16
|
+
run app
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'uri'
|
2
|
+
|
1
3
|
# coding: utf-8
|
2
4
|
module Hashbang
|
3
5
|
module Standalone
|
@@ -11,12 +13,17 @@ module Hashbang
|
|
11
13
|
url = environment['QUERY_STRING'].split('&').find{|x| x[0,4] == 'url='}
|
12
14
|
|
13
15
|
unless url.to_s.length == 0
|
14
|
-
url = url.split('=')
|
16
|
+
url = url.split('=')
|
17
|
+
url.shift
|
18
|
+
|
19
|
+
url = url.join('=')
|
15
20
|
url = URI.unescape url
|
16
21
|
url = Crawler.urlFromUrl url
|
17
22
|
end
|
18
23
|
|
19
|
-
|
24
|
+
host = URI.parse(url).host
|
25
|
+
|
26
|
+
if url.to_s.length == 0 || !host.match(Config.url)
|
20
27
|
return [200, {"Content-Type" => "text/html; charset=utf-8"}, ['']]
|
21
28
|
end
|
22
29
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hashbang
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-03-
|
12
|
+
date: 2012-03-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: headless
|
16
|
-
requirement: &
|
16
|
+
requirement: &70188730061260 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70188730061260
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: sunscraper
|
27
|
-
requirement: &
|
27
|
+
requirement: &70188730059200 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 1.2.0.pre1
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70188730059200
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: unicorn
|
38
|
-
requirement: &
|
38
|
+
requirement: &70188730058480 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,7 +43,7 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70188730058480
|
47
47
|
description: Hashbang is a tiny Rack proxy serving HTML dumps for your RICH web-applications
|
48
48
|
according to Google AJAX Crawling conventions. Make your Rails AJAX applications
|
49
49
|
indexable in no time.
|