module ActionDispatch::Http::URL

def port_string

req.port_string # => ":8080"
req = Request.new 'HTTP_HOST' => 'example.com:8080'

req.port_string # => ""
req = Request.new 'HTTP_HOST' => 'example.com:80'

end
include ActionDispatch::Http::URL
class Request < Rack::Request

number of this request is not the default HTTP \port 80 or HTTPS \port 443.
Returns a string \port suffix, including colon, like ":8080" if the \port
def port_string
  standard_port? ? '' : ":#{port}"
end