Sha256: c25bb0d0fe1c4d7d131d7cbac4a6b424bf323453792a64ebda6f4ea7514ae5e2
Contents?: true
Size: 554 Bytes
Versions: 6
Compression:
Stored size: 554 Bytes
Contents
require 'thread' require 'http/parser' require 'socket' def handle_client(client) Thread.new do parser = Http::Parser.new parser.on_message_complete = proc do |env| status_code = 200 data = "Hello world!\n" headers = "Content-Length: #{data.bytesize}\r\n" client.write "HTTP/1.1 #{status_code}\r\n#{headers}\r\n#{data}" end client.read_loop { |data| parser << data } client.close end end server = TCPServer.open(1234) puts "Listening on port 1234" while socket = server.accept handle_client(socket) end
Version data entries
6 entries across 6 versions & 1 rubygems