class Rack::ConditionalGet

def call(env)

modified since the last request.
Return empty 304 response if the response has not been
def call(env)
  case env[REQUEST_METHOD]
  when "GET", "HEAD"
    status, headers, body = response = @app.call(env)
    if status == 200 && fresh?(env, headers)
      response[0] = 304
      headers.delete(CONTENT_TYPE)
      headers.delete(CONTENT_LENGTH)
      response[2] = Rack::BodyProxy.new([]) do
        body.close if body.respond_to?(:close)
      end
    end
    response
  else
    @app.call(env)
  end
end