我正在尝试简单的放置并开始运行。完美的工作,但我似乎得到了404与PUT。
我尝试过的事情:
我的怀疑:
我在Sinatra框架上运行这个,这就是我在控制台上看到的:
INFO WEBrick :: HTTPServer #start:pid = 10137 port = 3000 :: 1 - - [19 / Mar / 2015:11:36:34 -0700]“GET / users / add HTTP / 1.1”403 - 0.0156
(等等,这不应该是POST吗?)
:: 1 - - [19 / Mar / 2015:11:36:45 -0700]“GET / users / add / 11 HTTP / 1.1”404 688 0.0086
(关于如何指定要放置的数据的问题)
:: 1 - - [19 / Mar / 2015:11:43:15 -0700]“GET / users / add / name = 11 HTTP / 1.1”404 693 0.0018
我的路线users.rb代码:
module Routes
module Users
def self.registered(app)
app.post '/users/add' do
reqUserId = params[:id]
"params id #{reqUserId}"
end
end
end
任何帮助都会很棒。我也非常乐于阅读任何内容。
答案 0 :(得分:0)
看起来你好像被这里的一些东西搞糊涂了。
首先,put和post不一样。 PUT vs POST in REST可能你想用帖子。
你可能想要的是这样的:
get "/users/add" do
erb :useradd
end
post "/users/add" do
params[:userId]
#render layout or redirect to a url
end
您的useradd
erb模板如下所示:
<form action="/users/add" method="post">
<input name="userId" type="text" />
<input type="submit" value="submit" id="submit" />
</form>
因此,如果您打开一个呈现视图的/users/add
网址,那么您的浏览器会执行GET操作。如果按下submit
,表单会显示您的输入字段。
要测试您的帖子路线,您还可以使用curl:
之类的东西curl --data "param1=value1¶m2=value2" http://localhost:3000/users/add