http2 0.0.21 → 0.0.22
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/VERSION +1 -1
- data/http2.gemspec +2 -2
- data/lib/http2.rb +10 -8
- metadata +16 -16
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.22
|
data/http2.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "http2"
|
8
|
-
s.version = "0.0.
|
8
|
+
s.version = "0.0.22"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Kasper Johansen"]
|
12
|
-
s.date = "2013-06-
|
12
|
+
s.date = "2013-06-30"
|
13
13
|
s.description = "A lightweight framework for doing http-connections in Ruby. Supports cookies, keep-alive, compressing and much more."
|
14
14
|
s.email = "k@spernj.org"
|
15
15
|
s.extra_rdoc_files = [
|
data/lib/http2.rb
CHANGED
@@ -24,7 +24,7 @@ class Http2
|
|
24
24
|
end
|
25
25
|
end
|
26
26
|
|
27
|
-
attr_reader :cookies, :args
|
27
|
+
attr_reader :cookies, :args, :resp
|
28
28
|
|
29
29
|
VALID_ARGUMENTS_INITIALIZE = [:host, :port, :ssl, :nl, :user_agent, :raise_errors, :follow_redirects, :debug, :encoding_gzip, :autostate, :basic_auth, :extra_headers, :proxy]
|
30
30
|
def initialize(args = {})
|
@@ -63,7 +63,7 @@ class Http2
|
|
63
63
|
@uagent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
|
64
64
|
end
|
65
65
|
|
66
|
-
if !@args.key?(:raise_errors)
|
66
|
+
if !@args.key?(:raise_errors) || @args[:raise_errors]
|
67
67
|
@raise_errors = true
|
68
68
|
else
|
69
69
|
@raise_errors = false
|
@@ -646,11 +646,11 @@ class Http2
|
|
646
646
|
http = Http2.new(args)
|
647
647
|
return http.get(url)
|
648
648
|
end
|
649
|
-
elsif @raise_errors
|
649
|
+
elsif @raise_errors && resp.args[:code].to_i == 500
|
650
650
|
err = Http2::Errors::Internalserver.new(resp.body)
|
651
651
|
err.response = resp
|
652
652
|
raise err
|
653
|
-
elsif @raise_errors
|
653
|
+
elsif @raise_errors && resp.args[:code].to_i == 403
|
654
654
|
err = Http2::Errors::Noaccess.new(resp.body)
|
655
655
|
err.response = resp
|
656
656
|
raise err
|
@@ -706,16 +706,18 @@ class Http2
|
|
706
706
|
@transfer_encoding = match[2].to_s.downcase.strip
|
707
707
|
end
|
708
708
|
|
709
|
-
if key != "transfer-encoding" and key != "content-length" and key != "connection" and key != "keep-alive"
|
710
|
-
self.on_content_call(args, line)
|
711
|
-
end
|
712
|
-
|
713
709
|
puts "Http2: Parsed header: #{match[1]}: #{match[2]}" if @debug
|
714
710
|
@resp.headers[key] = [] unless @resp.headers.key?(key)
|
715
711
|
@resp.headers[key] << match[2]
|
712
|
+
|
713
|
+
if key != "transfer-encoding" and key != "content-length" and key != "connection" and key != "keep-alive"
|
714
|
+
self.on_content_call(args, line)
|
715
|
+
end
|
716
716
|
elsif match = line.match(/^HTTP\/([\d\.]+)\s+(\d+)\s+(.+)$/)
|
717
717
|
@resp.args[:code] = match[2]
|
718
718
|
@resp.args[:http_version] = match[1]
|
719
|
+
|
720
|
+
self.on_content_call(args, line)
|
719
721
|
else
|
720
722
|
raise "Could not understand header string: '#{line}'.\n\n#{@sock.read(409600)}"
|
721
723
|
end
|
metadata
CHANGED
@@ -1,75 +1,75 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: http2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.22
|
4
5
|
prerelease:
|
5
|
-
version: 0.0.21
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Kasper Johansen
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-06-
|
12
|
+
date: 2013-06-30 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
|
15
|
+
name: rspec
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
16
17
|
none: false
|
17
18
|
requirements:
|
18
19
|
- - ~>
|
19
20
|
- !ruby/object:Gem::Version
|
20
21
|
version: 2.8.0
|
21
|
-
name: rspec
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
none: false
|
26
26
|
requirements:
|
27
27
|
- - ~>
|
28
28
|
- !ruby/object:Gem::Version
|
29
29
|
version: 2.8.0
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
|
-
|
31
|
+
name: rdoc
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
32
33
|
none: false
|
33
34
|
requirements:
|
34
35
|
- - ~>
|
35
36
|
- !ruby/object:Gem::Version
|
36
37
|
version: '3.12'
|
37
|
-
name: rdoc
|
38
38
|
type: :development
|
39
39
|
prerelease: false
|
40
|
-
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
41
|
none: false
|
42
42
|
requirements:
|
43
43
|
- - ~>
|
44
44
|
- !ruby/object:Gem::Version
|
45
45
|
version: '3.12'
|
46
46
|
- !ruby/object:Gem::Dependency
|
47
|
-
|
47
|
+
name: bundler
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
48
49
|
none: false
|
49
50
|
requirements:
|
50
51
|
- - ! '>='
|
51
52
|
- !ruby/object:Gem::Version
|
52
53
|
version: 1.0.0
|
53
|
-
name: bundler
|
54
54
|
type: :development
|
55
55
|
prerelease: false
|
56
|
-
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
57
|
none: false
|
58
58
|
requirements:
|
59
59
|
- - ! '>='
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: 1.0.0
|
62
62
|
- !ruby/object:Gem::Dependency
|
63
|
-
|
63
|
+
name: jeweler
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
64
65
|
none: false
|
65
66
|
requirements:
|
66
67
|
- - ~>
|
67
68
|
- !ruby/object:Gem::Version
|
68
69
|
version: 1.8.4
|
69
|
-
name: jeweler
|
70
70
|
type: :development
|
71
71
|
prerelease: false
|
72
|
-
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
73
|
none: false
|
74
74
|
requirements:
|
75
75
|
- - ~>
|
@@ -111,10 +111,10 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
111
111
|
requirements:
|
112
112
|
- - ! '>='
|
113
113
|
- !ruby/object:Gem::Version
|
114
|
+
version: '0'
|
114
115
|
segments:
|
115
116
|
- 0
|
116
|
-
hash:
|
117
|
-
version: '0'
|
117
|
+
hash: -1664380654006357926
|
118
118
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
119
119
|
none: false
|
120
120
|
requirements:
|