Rails:有点无效的uri错误

时间:2013-11-16 10:34:22

标签: ruby-on-rails ruby

我正在尝试使用gem "bitly"缩短我的rails应用中的链接。但它给了我一个错误INVALID_URI - '500'

def show
  @product = Product.find(params[:id])
  bitly = Bitly.new('my-user-name','my-api-key')
  page_url = bitly.shorten(request.original_url)
  @url = page_url.short_url
end

request.original_url = http://localhost:3000/products/219

这有效:bitly.shorten("http://www.google.com")

但这不是:bitly.shorten("http://localhost:3000/products/219")

有什么线索?

2 个答案:

答案 0 :(得分:10)

所以事实证明你不能咬一个localhost链接。当您启动应用程序时,该代码最有可能发挥作用。

答案 1 :(得分:0)

@Cauterise是正确的 - 我遇到了同样的问题。我把它推到heroku上工作;但是,仍然会在本地呈现错误页面。要消除本地错误,只需将bitly代码包装在if语句中:

if Rails.env.development?
  ‘foobar’
else
  do_url_shortener
end