Java小白手修炼手册--第二阶段--Java SE--HTTP 请求方法:GET 和 POST表单解析

目录

HTTP 请求方法:GET 和 POST

Get/Post表单解析

Get

Get消息

Post

Post消息

Form表单

From工作原理:

属性

请求常用的请求方式?区别在哪?


HTTP 请求方法:GET 和 POST

Get/Post表单解析

Get

Get---从指定的资源请求数据。

GET:请求参数放在请求地址的后面,请求参数有大小限制只能传递几k的数据,而参数在地址栏中可以看到所以不能传递敏感信息(密码)

  • 浏览器地址栏发出的请求是get
  • 超链接发出的请求是get
  • form表单默认发出的请求是get

Get消息

Java小白手修炼手册--第二阶段--Java SE--HTTP 请求方法:GET 和 POST表单解析_第1张图片

请注意,查询字符串(名称/值对)是在 GET 请求的 URL 中发送的:

/test/demo_form.asp?name1=value1&name2=value2

有关 GET 请求的其他一些注释:

  • GET 请求可被缓存
  • GET 请求保留在浏览器历史记录中
  • GET 请求可被收藏为书签
  • GET 请求不应在处理敏感数据时使用
  • GET 请求有长度限制
  • GET 请求只应当用于取回数据

Post

Post--- 向指定的资源提交要被处理的数据

Post:请求参数放在请求体里面用户看不到,而且没有大小限制通常.上传文件时或者传递敏感信息时使用POST

只有form表单设置method="post"时发出的才是post请求

Post消息

Java小白手修炼手册--第二阶段--Java SE--HTTP 请求方法:GET 和 POST表单解析_第2张图片

请注意,查询字符串(名称/值对)是在 POST 请求的 HTTP 消息主体中发送的:

POST /test/demo_form.asp HTTP/1.1
Host: w3schools.com
name1=value1&name2=value2

有关 POST 请求的其他一些注释:

  • POST 请求不会被缓存
  • POST 请求不会保留在浏览器历史记录中
  • POST 不能被收藏为书签
  • POST 请求对数据长度没有要求

 

Form表单

表单在网bai页中主要负责数据采集功能。一个表单有du三个基本组成部分: 表单标zhi签:这里面包含了处理表单数dao据所用CGI程序的URL以及数据提交到服务器的方法。 表单域:包含了文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等。 表单按钮:包括提交按钮、复位按钮和一般按钮;用于将数据传送到服务器上的CGI脚本或者取消输入,还可以用表单按钮来控制其他定义了处理脚本的处理工作。

表单数据是指通过表单让用户填写内容,然后提交到服务器上;这些数据被称之为表单数据.

 

From工作原理:

相当于一个控件集合,里面包含很多控件,点“提交”后会把表单中的所有控件的值都传给action到的页面,这里通过post方法传递时会隐藏表单中的所有值,当通过GET方法传递时,可以在URL地址栏看到?号后所跟的值,也就是表单里所有的值.

用户名: 密码:

属性

  • action {URL}:一个URL地址,里面写的是url链接,接就是表单提交的地址。

  • method {get/post}:里面写的是数据提交的方式,可以写入get或者post,指定表单以何种方式发送到指定的页面。
    指定的值有:get :form表单里所填的值,附加在action指定的URL后面,做为URL链接而传递。
          post :form表单里所填的值,附加在HTML Headers上。

  • enctype属性,提交数据的编码格式

文本框:

密码框

单选
xxx
多选

日期

文件

文本域

下拉选 city=bj
	

案例演示 



	
		
		
	
	
		
		
			
			
			
			
			 
性别:
兴趣爱好:抽烟 喝酒 烫头
生日:
靓照:
自我介绍:
所在城市

请求常用的请求方式?区别在哪

  • post 和 get 方式

在from表单中有一个method属性,定义提交表单中的数据给服务器的方式,其中我们常用的有get和post两种方式,二者区别如下:

1、 get方式发送请求是会将表单所有数据拼接成key=value的形式,拼接在URL中向服务器传输信息;post方式发送请求时浏览器URL并不发生变化,但数据会通过浏览器后台传输给服务器,
2、get方式发送请求时的URL为表单数据的拼接,如果输入的是密码,则密码会显示在url上,不安全;post方式发送请求时浏览器URL并不发生变化,安全性更可靠
3、浏览器地址栏的url链接的长度有限制,如果采用get方式;而表单输入信息过多,会导致请求拼装的URL超出长度限制,采用post方式不会有表单数据长度的限制,故post适用于数据的增加和修改故
4、get是用来从服务器上获得数据,而post是用来向服务器上传递数据
如果提交请求纯粹只是从服务器端获取数据而不是进行其他操作,并且多次提交不会有明显的副作用,应该使用get(适用于数据的查询获取)。
如果提交这个请求会产生其他操作和影响,就应该使用post(适用于数据的增删改)。
如:修改服务器上数据库中的数据;发送一封邮件;删除一个文件等

Java小白手修炼手册--第二阶段--Java SE--HTTP 请求方法:GET 和 POST表单解析_第3张图片

 

常用的两种请求方式

重点

传输数据形式

传输

安全

get

从服务器上获取资源

通过URL请求,以filed(字段)=value的形式,置于URL后,并用"?"连接,多个请求数据之间用"&"连接,以地址栏的形式传递给服务端,这个过程用户是可见的

传输量小,因为受URL长度限制,效率URL长度限制,效率

不安全,因为URL是可见的,可能会泄露私密信息,如密码等

post

向服务器发送数据

把提交上来的数据全部被包含在请求的消息正文中,提交上来的

可以传输大量数据,当表单含有用户隐私信息或者有上传附件操作时,必须使用post请求。

较get安全

 

 

你可能感兴趣的:(Java小白手修炼手册--第二阶段--Java SE--HTTP 请求方法:GET 和 POST表单解析)