我需要从ROR控制器调用一些PHP脚本,所以我试图使用开放(“网址”),但它没有奏效。
例如,在红宝石控制器打开网址
def successful_login
open("http://stackoverflow.com")
redirect_to home_url
end
变量Errno :: EINVAL在UsersController#创建
无效的参数 - http://stackoverflow.com
任何想法?
我需要从ROR控制器调用一些PHP脚本,所以我试图使用开放(“网址”),但它没有奏效。
例如,在红宝石控制器打开网址
def successful_login
open("http://stackoverflow.com")
redirect_to home_url
end
变量Errno :: EINVAL在UsersController#创建
无效的参数 - http://stackoverflow.com
任何想法?
require 'net/http'
Net::HTTP.get('www.example.com', '/index.html')
哦,thx!似乎它更接近解决方案,但我有另一个错误(绝对无法识别):Errno :: ECONNRESET(????????? ???? ??????????????? ????????????? ?????????。): – Alex 2011-05-03 09:59:00
打开控制台/终端并加载irb。然后输入'require'net/http'。和'Net :: HTTP.get('www.google.com','/ intl/en/about /')'没有引号。看看它是否给你任何输出。如果是这样,它可以正常工作。你想要打什么网址?你可以用浏览器打开它吗? – thekindofme 2011-05-03 10:06:30
现在,当我打电话给本地主机的网址。尽管事实上,它并不适用于外部URL,但我可以在浏览器中打开它。看起来是开发环境问题。非常感谢! – Alex 2011-05-03 10:55:36
需要的净/ HTTP' 需要 'URI'
url = URI.parse('http://www.example.com/index.html')
res = Net::HTTP.start(url.host, url.port) {|http|
http.get('/index.html')
}
puts res.body
貌似忘记需要开放-URI:'需要 '开放-URI';打开(的“http: // host /')。阅读' – taro 2011-05-03 10:06:54