【发布时间】:2013-08-20 12:09:13
【问题描述】:
所以,我花了很多时间编写一个很酷的 RESTful API。为简化起见,可以通过对/users 执行POST 请求来创建新用户。
太好了,嗯?但是现在我的 HTML 表单想要创建一个用户。它的所有元素都与需要传递给/users 的参数相同。因此,form 充分利用这个优秀的 API 似乎很有意义。
我的表单位于/register.html。它的属性现在是:action="/users" method="post"。开箱即用地与我的 API 完美集成!
问题?我的 RESTful API 将以 JSON 响应,而我的表单无法处理此响应。例如,当传递无效的电子邮件地址时,返回的正文可能是{"error": 400, "msg": "The given email address is invalid."}。相反,register.html 应该收到此消息并显示适当的消息,同时允许用户修复输入错误。
一个明显的解决方案是根本不发送表单,而是使用 AJAX 根据输入值与 API 进行交互。但是,这远非理想,因为该表单对于没有 Javascript 的人来说毫无用处。
我可以考虑其他方法吗?还是我不应该将表单输入与我的 API 结合起来?
我认为这并不重要,但我正在使用 Node.js。
【问题讨论】:
标签: javascript html forms node.js api