这可能会让我看起来很蹩脚但仍然 - 我找不到任何典型的机架应用程序结构(文件夹/文件,如public,config.ru)或config.ru
文件的正式描述内容。
在Java世界中,有一个明确的Web应用程序定义及其组成的部分(WEB-INF,META-INF web.xml)。
是否有Rack Web应用程序的规范?或者像Ruby本身一样模糊不清。
我希望在http://rack.rubyforge.org/网站的某个地方找到这些信息,但我不能。请指出我正确的方向。
虽然我将这个问题标记为已回答,但值得一提的是,问题本身并不合法。应用程序结构由正在使用的实际webserver /插件组合驱动,如Apache / Passenger,而不是Rack。
答案 0 :(得分:2)
Rack Web应用程序非常简单:
class HelloWorld
def call(env)
[200, {"Content-Type" => "text/plain"}, ["Hello world!"]]
end
end
和基于Rails,Sinatra等框架构建的应用程序一样复杂,基于Rack构建。
与结构有关,您可以创建自己的结构。使用Rack,您可以按照希望的方式生成内容。使用Rack,您基本上可以输出原始HTTP内容。
“Introducing Rack”,“32 Rack Resources to Get You Started”和“Introduction to Rack middleware”是更好地了解Rack的资源。
与结构有关,您可以自由组织文件以适应webapp。您可能在其他文件中有其他Rack应用程序;您只需要正确地要求这些文件。
Rack应用程序可以是任何使用:call
响应env
消息的Ruby类,就像上面的HelloWorld应用程序一样。
答案 1 :(得分:1)
您检查了the Rack Wiki吗?它包含许多指向教程,演示文稿等的链接。(但我不确定规格。)