Ruby HelloWorld机架程序:NoMethodError:未定义的方法'each'

Ruby HelloWorld机架程序:NoMethodError:未定义的方法'each',ruby,rack,Ruby,Rack,我试图在HelloWorld机架下执行程序,但出现了一个错误。谢谢你的帮助 ruby版本ruby 1.9.3p448 2013-06-27[x86_64-cygwin] # helloworld.rb require 'rack' require 'rack/server' class HelloWorld def response [200, {}, 'Hello World'] end end class HelloWorldApp def self.call(env)

我试图在HelloWorld机架下执行程序,但出现了一个错误。谢谢你的帮助

ruby版本ruby 1.9.3p448 2013-06-27[x86_64-cygwin]

# helloworld.rb
require 'rack'
require 'rack/server'

class HelloWorld
 def response
   [200, {}, 'Hello World']
 end
end

class HelloWorldApp
 def self.call(env)
   HelloWorld.new.response
 end
end

Rack::Server.start :app => HelloWorldApp
错误

更改:

def response
  [200, {}, 'Hello World']
end
致:


数组中从响应返回的第三项,即主体必须响应each方法。数组,例如

从:

身体

正文必须对每个字符串进行响应,并且只能产生字符串值。这个 正文本身不应该是字符串的实例,因为这将打断 Ruby 1.9。如果主体对关闭作出响应,则会在关闭后调用它 迭代。如果操作后主体被中间件替换,则 如果原始主体响应关闭,则必须首先关闭。如果 Body响应_路径,它必须返回一个字符串来标识 文件的位置,该文件的内容与 互相呼叫;服务器可将其用作替代方案, 可能是传输响应的更有效的方法。身体 通常是字符串数组、应用程序实例本身或 类似文件的对象


谢谢你的推荐。
def response
  [200, {}, 'Hello World']
end
def response
  [200, {}, ['Hello World']]
end