您好,欢迎来到五一七教育网。
搜索
您的当前位置:首页get 和 post 俩种提交表单的方式

get 和 post 俩种提交表单的方式

来源:五一七教育网

get 和 post 俩种提交表单的方式

自动提交表单的数据

启用表单的自动提交方式时,
我们需要添加上这一句:

禁用表单的自动提交方式 需要添加上:(俩者都可以,二选一)


form表单的属性 action 和 method

属性

属性值

描述

action

URL

规定当提交表单时向何处发送表单的数据

method

get / post

规定用于发送form-data的HTTP的方法

以下就是提交表单的方式:

<form action="/Form00/getData" method="post"></form>

URL都有哪些值呢?

URL可能的值

绝对的URL

指向其他网站的站点 (eg: src=“www.baidu.com”)

相对的URL

指向本站点内的文件 (eg:src="/Form/getData")

method 属性 有 get 和 post 这俩个值。

在W3Cchool 中 指出,使用get 提交时 参数是直接暴露在URL上的。

当 get 和 post 相比较时,get 是最简单也是最快的 ,而且get 在大部分的情况下都是可以使用的。

而我们使用post是有条件的。

虽然这样讲,但是get 请求数据就是没有post 请求数据安全。

当我们遇到以下的情况,要使用 post 请求:

  1. 当我们无法使用缓存文件时 (更新服务器上的文件或者数据库)
  2. 当我们向服务器发送大量的数据时 (post 提交, 是没有数据量的,而get提交是数据量的)
  3. 当我们发送包含未知字符的用户输入时,post 提交 往往 比get提交 更稳定更可靠更好

总的来说:选择post 方法来提交数据更好一点。

get 和 post 到底有什么区别呢?

以下向你们解答:

get 提交方法

post 提交方法

用来向服务器上获取数据

用来向服务器上传递修改数据(或者说传递更新的数据)

将表单里的数据添加到action所指向的URL后面,而且俩者之间是使用“ ? ” 来进行连接的,但是里面的各个变量之间使用“ & ”来进行连接

将表单里面的数据放在form的数据体(FormData)中,然后按照键值对的方式,将数据传递到所指定的action

相对来说,get是不安全的,因为当用户在传输数据的过程中,数据被放在请求的URL上,这样用户就会直接在浏览器上看到提交的数据,不隐蔽

而post的所有操作对于用户来说是不可见的,数据都在数据体(FormData)中

当get方法向URL中添加数据,URL的长度是_有_的(URL的最大长度是2048个字符(而一个字母(或中文)就代表一个字符))

post提交是_无_的

get方法是form表单的默认提交方式

获取到数据之后,刷新时是不会有负面的影响的,因为只是获取到数据(没有对整一个页面产生影响)

post数据将会被重新提交。可能会产生不良的影响(代码有瑕疵,或者数据路径没有连接上,是会导致有不同程度的报错) (浏览器应该告知用户数据将会被重新进行提交)

——

——

数据类型的

get只允许 ASCII 字符

post 没有字符 (企业开发中,假如需求中要提交二进制数据(eg:图片),那么我们就需要使用post 方法来进行提交 )

get 提交 ——get只能通过两种方式接收数据-从控制器中 (第一种 和 第四种方法)

   //获取form表单
                let form = document.getElementById("frm");
               
               //get只能通过两种方式接收数据-从控制器中
                //1./Main/GetData   通过形参接收数据
                //form.action = "/Main/GetData";
                //4.EntityClass     实体类接收数据
                form.action = "/Main/getDataByEntityClass";
                form.method = "get";
                //submit()  提交方法
                form.submit();

post 提交——post可以通过四种方式接收数据-从控制器中

        //获取form表单
                 let form = document.getElementById("frm");
              
                //post可以通过四种方式接收数据-从控制器中
                //1./Main/GetData 通过形参接收数据
                //form.action = "/Main/GetData";
                
               //2."/Main/getDataByFormCollection" 通过FormCollection来接收数据
                //form.action = "/Main/getDataByFormCollection";
                
                //3.通过 Request.Form["name的属性值"]获取表单数据
                //form.action = "/Main/getDataByRequest";
                
                //4.EntityClass实体类接收数据
                form.action = "/Main/getDataByEntityClass";
                
                form.method = "post";
                //submit()  提交方法
                form.submit();

总结:

1. get 请求数据 虽然在大部分的情况下可以使用,但是 个人建议 使用 post 来请求数据。

2. post 方法不但安全,而且post 是按照键值对的方式来传递数据的, post 提交数据的,没有字符

还可以 提交二进制数据(图片)。post 不但可以获取数据,还可以修改(更新)数据。

3. 在企业开发中,一般使用post 方法来提交表单数据,以便更好的进行数据的 增删查改 操作。

总结

写到这里也结束了,在文章最后放上一个小小的福利,以下为小编自己在学习过程中整理出的一个关于 java开发 的学习思路及方向。从事互联网开发,最主要的是要学好技术,而学习技术是一条慢长而艰苦的道路,不能靠一时激情,也不是熬几天几夜就能学好的,必须养成平时努力学习的习惯,更加需要准确的学习方向达到有效的学习效果。

由于内容较多就只放上一个大概的大纲,需要更及详细的学习思维导图的 。
还有 高级java全套视频教程 java进阶架构师 视频+资料+代码+面试题!

全方面的java进阶实践技术资料,并且还有技术大牛一起讨论交流解决问题。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 517ttc.cn 版权所有 赣ICP备2024042791号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务