Class: AppHttp
- Inherits:
-
Object
- Object
- AppHttp
- Defined in:
- lib/apphttp.rb
Instance Method Summary collapse
-
#initialize(app, host: '0.0.0.0', port: '9232', debug: false) ⇒ AppHttp
constructor
A new instance of AppHttp.
- #start ⇒ Object
Constructor Details
#initialize(app, host: '0.0.0.0', port: '9232', debug: false) ⇒ AppHttp
13 14 15 |
# File 'lib/apphttp.rb', line 13 def initialize(app, host: '0.0.0.0', port: '9232', debug: false) @app, @host, @port, @debug = app, host, port, debug end |
Instance Method Details
#start ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/apphttp.rb', line 17 def start server = TCPServer.new(@host, @port) while (session = server.accept) raw_request = session.gets request = raw_request[/.[^\s]+(?= HTTP\/1\.\d)/].strip result,content_type = get(request) puts 'content_type: ' + content_type.inspect if @debug if result then response = result else response = "404: page not found" content_type = 'text/plain' end session.print "HTTP/1.1 200 OK\r\nContent-type: #{content_type}\r\n" + "Content-Length: #{response.bytesize}\r\n" + "Connection: close\r\n" session.print "\r\n" session.print response session.close end end |