将表单数据发送到服务器有哪两种方法?各有何特点
1个回答
关注
展开全部
亲,你好,很高兴为您解答将表单数据发送到服务器有哪两种方法?各有何特点是method属性浏览器使用method属性设置的方法将表单中的数据传送给服务器进行处理。共有两种方法:post方法和get方法。如果采用post方法,浏览器将会按照下面两步来发送数据。首先,浏览器将与action属性中指定的表单处理服务器建立联系,一旦建立连接之后,浏览器就会按分段传输的方法将数据发送给服务器。在服务器端,一旦post样式的应用程序开始执行时,就应该从一个标志位置读取参数,而一旦读到参数,在应用程序能够使用这些表单值以前,必须对这些参数进行解码。用户特定的服务器会明确指定应用程序应该如何接受这些参数。另一种情况是采用get方法,这时浏览器会与表单处理服务器建立连接,然后直接在一个传输步骤中发送所有的表单数据:浏览器会将数据直接附在表单的actionurl之后。这两者之间用问号进行分隔。
咨询记录 · 回答于2022-12-07
将表单数据发送到服务器有哪两种方法?各有何特点
亲,你好,很高兴为您解答将表单数据发送到服务器有哪两种方法?各有何特点是method属性浏览器使用method属性设置的方法将表单中的数据传送给服务器进行处理。共有两种方法:post方法和get方法。如果采用post方法,浏览器将会按照下面两步来发送数据。首先,浏览器将与action属性中指定的表单处理服务器建立联系,一旦建立连接之后,浏览器就会按分段传输的方法将数据发送给服务器。在服务器端,一旦post样式的应用程序开始执行时,就应该从一个标志位置读取参数,而一旦读到参数,在应用程序能够使用这些表单值以前,必须对这些参数进行解码。用户特定的服务器会明确指定应用程序应该如何接受这些参数。另一种情况是采用get方法,这时浏览器会与表单处理服务器建立连接,然后直接在一个传输步骤中发送所有的表单数据:浏览器会将数据直接附在表单的actionurl之后。这两者之间用问号进行分隔。
Get和post各有什么特点
首先GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。一般来说,我们会从三个点回答1、GET把参数包含在URL中,POST通过request body传递参数。所以相比GET,POST要更加安全2、数据库层面GET具有幂等性和安全性,POST不符合3、其他层面:GET可以被缓存、被存储,而POST不行但是很可惜,这不是面试官想要的答案?来吧,solo一波把。真正想要的回答是个啥玩意。回归本质,其实GET和POST是HTTP协议中的两种发送请求的方法。那么HTTP是什么?HTTP是基于TCP/IP的关于数据如何在万维网中如何通信的协议。HTTP的底层是TCP/IP。所以GET和POST的底层也是TCP/IP,也就是说,GET/POST都是TCP链接。GET和POST能做的事情是一样一样的。你要给GET加上request body,给POST带上url参数,技术上是完全行的通的。那么,“标准答案”里的那些区别是怎么回事?GET和POST本质上就是TCP链接,并无差别。但是由于HTTP的规定和浏览器/服务器的限制,导致他们在应用过程中体现出一些不同。 GET和POST的重大区别,简单的说:GET产生一个TCP数据包;POST产生两个TCP数据包。详细来说见如下过程:post请求的过程:(1)浏览器请求tcp连接(第一次握手)(2)服务器答应进行tcp连接(第二次握手)(3)浏览器确认,并发送post请求头(第三次握手,这个报文比较小,所以http会在此时进行第一次数据发送)(4)服务器返回100 Continue响应(5)浏览器发送数据(6)服务器返回200 OK响应get请求的过程:(1)浏览器请求tcp连接(第一次握手)(2)服务器答应进行tcp连接(第二次握手)(3)浏览器确认,并发送get请求头和数据(第三次握手,这个报文比较小,所以http会在此时进行第一次数据发送)(4)服务器返回200 OK响应也就是说,目测get的总耗是post的2/3左右,这个口说无凭,网上已经有网友进行过测试。所以这才是GET比POST更快的根本原因,但是再网速情况好的时候可
能不能简单说一下
太多了
从 HTTP 报文层面来看,GET 请求将信息放在 URL,POST 将请求信息放在请求体中。这一点使得 GET 请求携带的数据量有限,因为 URL 本身是有长度限制的,而 POST 请求的数据存放在报文体中,因此对大小没有限制。而且从形式上看,GET 请求把数据放 URL 上感觉不太安全,而 POST 请求把数据放在请求体里似乎安全一些。实际上想要获取 POST 请求中的内容还是很容易的,因此两者在安全性上其实没有太大差异,想要实现安全的信息传输还是得靠 HTTPS。从数据库层面来看,GET 符合幂等性和安全性,而 POST 请求不符合。这个其实和 GET/POST 请求的作用有关。按照 HTTP 的约定,GET 请求用于查看信息,不会改变服务器上的信息;而 POST 请求用来改变服务器上的信息。正因为 GET 请求只查看信息,不改变信息,对数据库的一次或多次操作获得的结果是一致的,认为它符合幂等性。安全性是指对数据库操作没有改变数据库中的数据。从其他层面来看,GET 请求能够被缓存,GET 请求能够保存在浏览器的浏览记录里,GET 请求的 URL 能够保存为浏览器书签。这些都是 POST 请求所不具备的。缓存是 GET 请求被广泛应用的根本,他能够被缓存也是因为它的幂等性和安全性,除了返回结果没有其他多余的动作,因此绝大部分的 GET 请求都被 CDN 缓存起来了,大大减少了 Web 服务器的负担。
已赞过
评论
收起
你对这个回答的评价是?