如何在ruby Shoes GUI应用程序中创建简单的http请求?

我试图对localhost:3000上运行的本地rails应用程序发出一个简单的http请求。 我的应用程序的代码在原型阶段非常多,因为我只尝试在尝试其他任何事情之前获取原始功能。

rails应用程序只是在分析之前返回看起来像这样的JSON

"{"response":"foo is blank"}"

以下是我现在正在尝试的代码:

require 'net/http'

def get_response
  return Net::HTTP.get(URI.parse("http://localhost:3000"))
end

Shoes.app(:width => 280, :height => 350) do

  flow do
    stack do
      button "make http request and display results in an alert box" do
        x = get_response
        alert x
      end# of button
    end# of stack
  end# of flow
end

我也试图把这个方法放在Shoes.app块中无济于事。 当执行时,这会创建它应该创建的所有元素,但是当我单击该按钮时不会发生任何事情。

我知道你不应该用红宝石鞋做任何实际的事情,但我仍然在努力。 谢谢你的时间


我试图运行代码时遇到的问题是,Shoes应用程序无法使用localhost进行localhost连接。 而不是使用localhost ,使用您的计算机的本地IP地址。

所以只需改变这一点:

Net::HTTP.get(URI.parse("http://localhost:3000"))

对此:

Net::HTTP.get(URI.parse("http://10.1.4.123:3000"))

如果你的电脑的本地IP是10.1.4.123

要查看确认这种情况的错误日志,请将以下行插入鞋子应用的顶部: Shoes.show_log

或者在Windows中运行*.rb文件时,在Mac上输入cmd + /或在Windows中按ctrl + / (?)。

对我来说,出现的错误是:

Connection refused - connect(2) for "::1" port 3000

链接地址: http://www.djcxy.com/p/79717.html

上一篇: How can I make simple http requests within a ruby Shoes GUI application?

下一篇: Which is the best license to release a framework?