Ruby で bit.ly などの短縮 URL の展開

ググって調べて書いてみた。

require 'net/http'
require 'uri'

def expandShortenURI(s)
  uri = URI(s)
  Net::HTTP.start(uri.host, uri.port) {|http|
    response = http.head(uri.request_uri)
    case response
    when Net::HTTPRedirection
      expandShortenURI(response['location'])
    else
      return s
    end
  }
end