Skip to content

Instantly share code, notes, and snippets.

@fielding
Created March 26, 2012 13:24
Show Gist options
  • Save fielding/2205029 to your computer and use it in GitHub Desktop.
Save fielding/2205029 to your computer and use it in GitHub Desktop.
config.ru for node.js projects with pow
require "net/http"
class ProxyApp
def call(env)
begin
request = Rack::Request.new(env)
headers = {}
env.each do |key, value|
if key =~ /^http_(.*)/i
headers[$1] = value
end
end
http = Net::HTTP.new("localhost", 8080)
http.start do |http|
response = http.send_request(request.request_method, request.fullpath, request.body.read, headers)
[response.code, response.to_hash, [response.body]]
end
rescue Errno::ECONNREFUSED
[500, {}, ["Server is down, try $ npm start"]]
end
end
end
run ProxyApp.new
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment