Ruby on rails 3 http和HTTParty在本地工作,但不能在Heroku-RoR3上工作

Ruby on rails 3 http和HTTParty在本地工作,但不能在Heroku-RoR3上工作,ruby-on-rails-3,ruby-on-rails-3.2,httparty,net-http,Ruby On Rails 3,Ruby On Rails 3.2,Httparty,Net Http,我正在开发一些RoR3应用程序,我必须向某个服务器发出HTTP请求 我尝试了Ruby的Net::HTTPlib,并在本地工作,但在Heroku上没有。然后我尝试了HTTParty,让它在本地运行,但在Heroku上仍然不起作用。我明白了 很抱歉,出了点问题 当我检查Heroku日志时,我得到 500内部服务器错误 显示为最后一个日志 我确保“httparty”gem在gemfile中的正确位置被提及 有关于如何从Heroku PaaS发出HTTP请求的教程吗 谢谢Amit Suroliya是正确

我正在开发一些RoR3应用程序,我必须向某个服务器发出HTTP请求

我尝试了Ruby的Net::HTTPlib,并在本地工作,但在Heroku上没有。然后我尝试了HTTParty,让它在本地运行,但在Heroku上仍然不起作用。我明白了

很抱歉,出了点问题

当我检查Heroku日志时,我得到

500内部服务器错误

显示为最后一个日志

我确保“httparty”gem在gemfile中的正确位置被提及

有关于如何从Heroku PaaS发出HTTP请求的教程吗


谢谢

Amit Suroliya是正确的。我也在使用HTTParty,它通过Curl和开发工作,但会在生产中崩溃。因为HTTParty参数是文本URL(作为字符串),所以它必须是一个完美的URL/URI(表示没有空格)。我的坏URI如下所示:

HTTParty.get("http://api.blahblahblah.com/v1/Boards/Search?&limit=79&query=#{query}&filter_date_from=1423353600")
注意插值
query=#{query}“
,因此如果
query='Michelle Obama'
,注意
Michelle
Obama
之间的空格。由于插值,
HTTParty.get('string')
不正确

解决方案:

将字符串中的所有空格替换为
+
,也可以使用
%20

我使用了
query.gsub!(“,+”)

有关URL中空格的更多信息,请查看此处:URL中的空格