html表单标签关于get和post请求

B/S架构为了实现web服务器和浏览器的交互,必然的产生了一些相应的规则,在html中表单的提交与验证显得尤为重要,这里主要谈一谈关于form表单的提交知识点。

在表单提交的功能上,我们将它分为,两个请求。其一,提交数据的post请求,其二,获取数据的get请求。
在html中的form标签中有method这样一个属性,它有get,post两个值。

get请求

get请求最常见的就是百度搜索时,通过将浏览器输入框的关键字提交给百度服务器,然后百度返回一个你想要的页面信息,就是告诉服务器你想要啥,服务器就给你啥。

下面举一个例子
action属性代表你想提交给谁,method代表提交的方式,这里是用get请求,提交给百度

<form action="http://www.baidu.com" method="get">
			<p>
				<input type="text" name="u_name"value="user"/>
			</p>
			<p>
				<input type="password" name="pass"value="123" />
			</p>
			<p>
				<input type="submit"value="提交" />
			</p>
</form>

按下提交按钮后你会发现已经跳转到百度页面,并且在网址栏有一串附带的字符串,在?后面就是你要传给百度的相应信息,在这里我传入了用户名u_name值为user和密码pass值为123,它们用&相隔,注意,必须是input标签中出现name属性的信息才会被传递。
在这里插入图片描述

post请求

post请求类似于日常生活中的注册账号,填写问卷调查,你在浏览器上面完成这些事之后,点一个提交按钮,这些消息就会被传给相应的服务器并且保存入数据库中,服务器并不需要再返回和给用户呈现什么必要的信息。

看一下这个例子,如果我将get直接改为post请求,将会产生什么结果

<form action="http://www.baidu.com" method="post">
			<p>
				<input type="text" name="u_name"value="user"/>
			</p>
			<p>
				<input type="password" name="pass"value="123" />
			</p>
			<p>
				<input type="submit"value="提交" />
			</p>
</form>

显而易见,网址中没有附带字符串,而是直接跳转到一个error页面,访问的页面不存在
在这里插入图片描述那么是不是我们的数据就没有提交给服务器呢,不是的,只不过是post的保密性更好,信息被隐藏了,如果你打开页面的检查,查看network,就可以在浏览器发送的请求中看到我们的信息。

在这里插入图片描述那么由此可见,post和get似乎只是在传递数据的方式上有所不同,那么两着是不是能够混用呢,答案是可以是可以,但最好不要这么做。
get请求最好不要用来提交大量数据,例如上传图片或者视频,你不可让一大串字符出现在浏览器地址框中。

用python的flask框架制作可在局域网内访问的静态网站

发布了29 篇原创文章 · 获赞 129 · 访问量 8712

猜你喜欢

转载自blog.csdn.net/weixin_44072077/article/details/102516109
今日推荐