Method: Rack::Request::Helpers#forwarded_port

Defined in:
lib/rack/request.rb

#forwarded_portObject


374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
# File 'lib/rack/request.rb', line 374

def forwarded_port
  forwarded_priority.each do |type|
    case type
    when :forwarded
      if forwarded = get_http_forwarded(:for)
        return(forwarded.map do |authority|
          split_authority(authority)[2]
        end.compact)
      end
    when :x_forwarded
      if value = get_header(HTTP_X_FORWARDED_PORT)
        return split_header(value).map(&:to_i)
      end
    end
  end

  nil
end