class Rainbows::ServerToken

An optional middleware to proudly display your usage of Rainbows! in the “Server:” response header. This means you can help tell the world you're using Rainbows! and spread fun and joy all over the Internet!

------ in your config.ru ------
require 'rainbows/server_token'
require 'rack/lobster'
use Rainbows::ServerToken
run Rack::Lobster.new

If you're nervous about the exact version of Rainbows! you're running, then you can actually specify anything you want:

use Rainbows::ServerToken, "netcat 1.0"

Public Class Methods

new(app, token = Const::RACK_DEFAULTS['SERVER_SOFTWARE']) click to toggle source
Calls superclass method
# File lib/rainbows/server_token.rb, line 21
def initialize(app, token = Const::RACK_DEFAULTS['SERVER_SOFTWARE'])
  super
end

Public Instance Methods

call(env) click to toggle source
# File lib/rainbows/server_token.rb, line 25
def call(env)
  status, headers, body = app.call(env)
  headers = Rack::Utils::HeaderHash.new(headers) unless Hash === headers
  headers['Server'.freeze] = token
  [ status, headers, body ]
end