好的,这似乎是一个真正的菜鸟问题。
我目前在我的MAMP服务器上运行了一个简单的html和javascript新闻阅读器。你可以在Github上看到它。一切都运行客户端,除了获取和缓存由一个非常小的PHP文件完成的提要。我有一个ajax调用,它通过传递一些参数来从php脚本请求新闻源。
我最近一直在学习Ruby,并开始在Ruby中重做这个简单的php脚本。我遇到的问题是我不能通过ajax请求ruby脚本,参数就像我用php一样。
那么最简单的步骤是什么才能做到这一点?
我觉得像一个完整的框架,即使像Sinatra一样小,也会有点矫枉过正。所以任何帮助将不胜感激。我是否完全以错误的方式思考这个问题?感谢。
更新
我最终采用了Ruby CGI的方式。这就是我所做的。
在我的脚本文件夹中,我添加了一个带有以下内容的.htaccess文件,以使apache执行.rb文件。
AddHandler cgi-script .rb
Options +ExecCGI
然后我就这样开始了我的ruby文件。
#!/usr/bin/ruby
require 'cgi'
cgi = CGI.new('html4')
cgi.out {
cgi.html {
"Hello World" #started content here
}
}
然后我确保该文件是可执行的。 chmod 774
。
感谢您的帮助。
答案 0 :(得分:0)
如果您认为sinatra对您来说仍然很重要,那么请更深入地尝试编写纯Rack应用程序。
例如,请参阅此最小应用 - https://github.com/stevenwilkin/ip.stevenwilkin.com
Rack只需要像这样的3个元素数组
[200 , {"Content-Type" => "text/plain"}, [env["REMOTE_ADDR"]]]
[return status , headers hash , body string ]
Rails,Sinatra和许多其他ruby Web框架都在使用Rack。
如果你需要很好地格式化请求参数,你可以使用http://rack.rubyforge.org/doc/classes/Rack/Request.html作为例子。
答案 1 :(得分:0)
这里最简单的解决方案是Ruby CGI。