2

我正在尝试使用 ruby​​ 框架 Ramaze 来实现 RESTful 控制器。但是,当我发送 PUT 时,我似乎无法访问请求中的数据。示例代码:

require 'ramaze'

class PutController < Ramaze::Controller
 map '/'

 def index
    "Argument of "+request[:id]
 end
end

Ramaze.start

我通过 curl 与之交互:

% curl -d id=5 "http://localhost:7000/"
Argument of 5

% curl -v -X PUT -d id=5 "http://localhost:7000/" > /dev/null
...
HTTP/1.1 500 Internal Server Error
[With a backtrace revealing that the request object is nil]

难道我做错了什么?我应该如何在 Ramaze 中获取 PUT 请求的正文?

4

1 回答 1

3

试试这个:

require 'rubygems'
require 'ramaze'

class PutController < Ramaze::Controller
 map '/'

 def index
    "Argument of "+request.POST['id']
 end
end

Ramaze.start

它适用于 PUT 以及 POST 和 GET。

于 2009-07-08T20:36:00.103 回答