day02-HTML02( 三 )


day02-HTML02

文章插图
4.3.15表单提交数据细节
  1. action表示将form表单的数据提交给哪个url,即服务器的哪个资源(如servlet)
  2. method属性设置提交的方式主要是:get 和 post,默认是get
  3. 表单提交的时候,数据没有发送给服务器的三种情况:
    • 表单某个元素项没有name属性值,则数据不会提交
    • 单?。囱】?下拉列表中的option标签)都需要添加value属性,以便发送给服务器
      对于checkbox复选框,可以提交多个值 , 但是name是统一的(为了区分复选框的分组)
      对于select , checkbox , radio标签,提交的数据是value指定的值
    • 表单项不在提交的form标签中
      提交的数据一定要放在form标签内,否则不会提交
  4. GET请求的特点是:
    • 浏览器地址中的地址是:action的属性值[+?+请求参数]请求参数的格式是:name=value&name=value
    • 不安全 (建议重要信息不要选择get)
    • 它有数据长度的限制

    day02-HTML02

    文章插图
  5. POST请求的特点是:
    • 浏览器地址栏中只有action属性值,提交的数据是携带在http请求中,不会展示在地址栏中
    • 相对于get请求要更安全
    • 理论上没有数据长度的限制
    post请求分析:
    如下,在浏览器中选择f12快捷键
    day02-HTML02

    文章插图

    day02-HTML02

    文章插图
    这里是http的请求头:
    POST /1027practice/ok.html HTTP/1.1Host: localhost:63342User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:106.0) Gecko/20100101 Firefox/106.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2Accept-Encoding: gzip, deflate, brContent-Type: application/x-www-form-urlencodedContent-Length: 24Origin: http://localhost:63342Connection: keep-aliveReferer: http://localhost:63342/1027practice/form_login.html?_ijt=e39at152i0jkgl2dtreahm36fk&_ij_reload=RELOAD_ON_SAVECookie: Idea-14176161=c5173052-46ad-4245-9208-03592d0dcf0e; Idea-f24e85b1=ae595c67-c988-4ef0-856d-44549b2b2eb7Upgrade-Insecure-Requests: 1Sec-Fetch-Dest: documentSec-Fetch-Mode: navigateSec-Fetch-Site: same-originSec-Fetch-User: ?1这里是http的请求体:
    username=jack&pwd=123456

推荐阅读