6

如果您通过 POST 发送 HTML 表单并且您不输入数据,谁能告诉我会发生什么?

例如:一个输入字段“名称”通过发送POST到另一个页面(例如 servlet 或 PHP)。如果不输入值,接收页面会得到什么?是未发送元素(null)还是得到空字符串?

4

2 回答 2

11

空值是您将收到的。用您的话说(“”),考虑到没有验证并且提交了表单。

只是出于好奇,您是否在服务器端对空值进行验证?我建议您在提交表单之前先检查客户端上的空值。这样您的 UI 将是无缝的,您将节省带宽。

这是带有非空值的 POST 请求的样子:

POST /submitpage.php HTTP/1.1
Host: www.awebsite.com
User-Agent: Safari/4.0
Content-Length: 39
Content-Type: application/x-www-form-urlencoded  

name=Ashwin+Singh&age=21&job=Developer

传递空值后,它将如下所示:

POST /submitpage.php HTTP/1.1
Host: www.awebsite.com
User-Agent: Safari/4.0
Content-Length: 16
Content-Type: application/x-www-form-urlencoded

name=&age=&job=
于 2012-09-15T11:24:37.427 回答
2

文本输入字段将被发送为空,但对于单选按钮和复选框,只有选定的项目将被传输到服务器。

于 2012-09-15T11:37:40.177 回答