GET和POST提交并接收表单

区别

  • get请求最大url长度是2048字符,post无限制。

    get可以被收藏为书签,post不行。

    get能被缓存,post不行。

    二者编码类型不同,post多了二进制数据多重编码。

    get的参数会保留在浏览器历史中,post参数不会。

    get数据类型为ASCII, post无限制可以为二进制。

相对来说post更安全,因为参数不可见,但是从传输角度来说两者一样,http网路传输都是明文,可以进行抓包。

因此想要传输安全,就要用https协议。

GET方式

  • HTML代码(get.html):
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>GET</title>
</head>
<body>
	<!-- 提交方式为GET -->
	<form action="get.php" method="get">
		Username:<input type="text" name="username" id="1">
		Password:<input type="text" name="passwd" id="2">
		<button type="submit">提交</button>
	</form>
</body>
</html>
  • php代码(get.php):
<?php 
	echo "username:".$_GET["username"];
	echo "<br/><br/>";
	echo "password:".$_GET["passwd"];
 ?>

当输入长度范围内的文本,页面正常:
在这里插入图片描述
当输入超过规定长度的文本时,页面报错:
在这里插入图片描述

POST方式

  • HTML代码(post.html):
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>POST</title>
</head>
<body>
	<!-- 提交方式为POST -->
	<form action="post.php" method="post">
		Username:<input type="text" name="username" id="1">
		Password:<input type="text" name="passwd" id="2">
		<button type="submit">提交</button>
	</form>
</body>
</html>
  • php代码(post.php):
<?php 
	echo "username:".$_POST["username"];
	echo "<br/><br/>";
	echo "password:".$_POST["passwd"];
 ?>

当输入长度范围内的文本,页面正常:
在这里插入图片描述
当输入长度大于1024字符的文本时,页面依然正常:
在这里插入图片描述

发布了88 篇原创文章 · 获赞 121 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_43968080/article/details/103442625