Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试在 Sinatra 中创建一个页面,以便您发布的任何内容(在参数名称“command”下)都会回显给您。这是我目前的方法:
post '/eval' do "I got #{params[:data][:command]}." end
如果我尝试向 /eval 发布任何内容,则会导致内部服务器错误。我究竟做错了什么?
问题是你的[:data]参数是nil. 解决此问题的一种方法是删除对[:data]. 试试这个。
[:data]
nil
require "rubygems" require "sinatra" post '/eval' do "I got #{params[:command]}." end
您可以在命令行上使用 curl 进行测试(如果您使用的是基于 unix 的系统)。
curl http://localhost:4567/eval -F "command=hello"
将来,如果您在问题中提供错误的堆栈跟踪,将对其他人有所帮助。