所以这是我想要得到的期望行为:
- 用户进入密码更改网页。
- 用户填写表格并将表格放入我们的 REST 服务器。
- 成功 PUT 后,用户将被重定向到“我的帐户”页面,并显示一条消息“密码已成功更改”。
- 如果他们刷新“我的帐户”页面,密码消息应该会消失。(即它是一次性消息。)
以下是我尝试过的解决方案(不成功):
1) 使用 JQuery 对 REST 服务器执行 AJAX PUT。这适用于 PUT,但重定向必须在 onSuccess JavaScript 中,并且如果它将 URL 上的消息传递到“我的帐户”页面,则该消息会在刷新后挂起。
2) 使用传统形式。但是,这不会执行 PUT(方法不支持 put、on post 和 get)。我可以做一个 POST,但从 REST 的角度来看这是“错误的”,因为我正在更新用户帐户记录,而不是创建新记录。使用此解决方案(RESTlet、Servlet 和/或 JSP),重定向和一次性消息都可以在服务器端进行处理。
那里有好的解决方案吗?或者我必须将我的 PUT 更改为 POST 吗?