0

我使用 CURL 发出了一个 HTTP 请求。

curl -X GET  \
http://localhost:3000/api/v1/user_api/35/edit?old_password=aa&new_password=bb&password_confirmation=cc

我的 Rails 服务器只识别第一个参数

Started GET "/api/v1/user_api/35/edit?old_password=aa" for 127.0.0.1 at 2013-08-01 14:12:52 +0100
Processing by Api::V1::UserApiController#edit as */*
Parameters: {"old_password"=>"aa", "id"=>35}

知道这里有什么问题吗?

- - - - - - - - - - - - - - - - - - -编辑 - - - - - - -----------------------------------------

警告!这是处理密码重置的一个非常糟糕的疯狂示例。

该问题仅针对 curl 和查询解析问题的主题。

感谢您的所有评论

4

1 回答 1

5

知道这里有什么问题吗?

您在查询字符串中以纯文本形式传递密码。

你从不这样做开始怎么样?


此外,您需要将 URL 放在引号中,&否则需要转义

curl -X GET  \
"http://localhost:3000/api/v1/user_api/35/edit?old_password=aa&new_password=bb&password_confirmation=cc"

但真的,请不要GET用来发送密码数据

于 2013-08-01T14:18:23.923 回答