关于前端中form表单的提交路径

form到底提交到了哪?

<form>标签有两个最常用的属性,一个是action,一个是method。

这里的action="",引号里的内容就是提交到服务端的http协议头的url部分。

一开始我写的是action="/index.html",但是每次点提交都会刷新下页面,我一开始还以为是本来就这样,

关于前端中form表单的提交路径

但我用自己写的Tomcat迷你版看了一下,idea那里收到的http协议是这样的。

关于前端中form表单的提交路径

撒我一开始以为是因为刷新了页面重新提交了申请html文件的这个请求,直到我把action的值改成action="/index.html/asd"

这下idea收到的http请求变成了这样:

关于前端中form表单的提交路径

现在可以看出action的内容就是form表单提交的url,感觉自己又对前端了解的更深入了。

method里的post或者get就是http的请求方式,两者虽然功能差不多但是还是有一些细微的差异的。

Post和Get的区别

get
      是form默认的提交方式
      如果通过一个超链访问某个地址,是get方式
      如果在地址栏直接输入某个地址,是get方式

      提交数据会在浏览器显示出来
      不可以用于提交二进制数据,比如上传文件
post
      必须在form上通过 method="post" 显示指定
      提交数据不会在浏览器显示出来
      可以用于提交二进制数据,比如上传文件