在http中处理表单的正确方法是什么?
on / somepage:
<form method="POST" action="/someaction.html">
<input type="text" name="name">
<input type="submit">
</form>
我们假设,该用户没有填写“姓名”。所以我应该产生一些错误。我应该怎么做:
第一种方法
第二
第三
哪一个是正确的方法?也许是第四个?
答案 0 :(得分:1)
正确的方法称为post/redirect/get,由维基百科描述为:
发布/重定向/获取(PRG)是Web开发人员的常见设计模式 帮助避免某些重复的表单提交并允许用户代理 使用书签和刷新按钮更直观地表现。
答案 1 :(得分:1)
第三个。它允许用户安全地点击页面刷新或书签。第一个虽然相似,但是要求你在线上来回传递形式的内容,这是低效的。作为细微的改进,您可以考虑:
答案 2 :(得分:0)
我建议在使用javascript发送for之前进行某种验证。 当然,您也应该在服务器端验证表单输入。至于是否使用重定向,我不知道那里有任何事实上的标准。
如果你想跟随使用HTTP协议,那么你应该发回一个4xx状态代码(例如400个错误请求),并提供一条信息性消息,说明输入中有什么问题。
答案 3 :(得分:0)
利用客户端验证吗?使用javascript可以避免发布表单(并减少服务器端处理)并让客户端(用户端:浏览器)执行验证。您还有其他什么验证?
以下是您可以使用javascript应用的基本验证链接: