当前位置: 首页 > news >正文

【JavaEE】_form表单构造HTTP请求

目录

1. form表单的格式

1.1 form表单的常用属性

1.2 form表单的常用搭配标签:input

2. form表单构造GET请求实例

3. form表单构造POST请求实例

4. form表单构造法的缺陷


对于客户端浏览器,以下操作即构造了HTTP请求:

1. 直接在浏览器地址栏中输入URL,此时构造了一个GET请求;

2. HTML中,一些特殊的标签如img,a,link,script等可能会触发GET请求;

3. 通过form表单来触发GET或POST请求(form本质也是一个HTML,但更复杂一点,故而单列而论);

4. ajax构造HTTP请求;

1. form表单的格式

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>form表单</title>
</head>
<body><form action=""></form>
</body>
</html>

1.1 form表单的常用属性

1. 在form表单的开始标签中,可以写属性(键值对),其中键值对之间用空格分割,键和值之间用=分割,键不需要引号但值要有双引号;常用的属性有action与method;

2. action属性的值填写的内容是访问的请求的URL(可以带上IP和端口号);

3. method属性的值填写的内容是构造的是GET请求还是POST请求(form表单只支持GET和POST,不支持其他的HTTP方法);

1.2 form表单的常用搭配标签:input

input标签是一个单标签:

(1)常用属性type取值为text或password(text为明文输入,password是密文输入)时:

表示一个输入框

input标签中,输入框中的内容就会被构造成HTTP请求的query string(键值对),其中key就是input输入框的name属性,value就是输入框中用户输入的内容;

(2)常用属性type取值为submit时,表示一个按钮

此时value属性中的内容是按钮上显示的文本

2. form表单构造GET请求实例

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>form表单</title>
</head>
<body><form action="http://www.sogou.com/abc.html" method="get"><input type="text" name="key1"><input type="text" name="key2"><input type="text" name="key3"><input type="submit" value="提交"></form>
</body>
</html>

根据路径使用Chrome打开文件,在三个输入框中依次输入1,2,3:

点击提交后页面如下:

试用Fiddler抓包,请求详情如下:

当前实例表示:客户端构造了一个GET请求发送给服务器,服务器返回的响应为404;

如果需要获取到服务器返回的正确的期望的响应,需要服务器的代码进行配合;

3. form表单构造POST请求实例

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>form表单</title>
</head>
<body><form action="http://www.sogou.com/abc.html" method="post"><input type="text" name="key1"><input type="text" name="key2"><input type="text" name="key3"><input type="submit" value="提交"></form>
</body>
</html>

点击提交后,同get请求,在输入框中输入1,2,3点击提交后,页面如下:

使用Fiddler抓包结果如下:

4. form表单构造法的缺陷:

1. form表单只支持构造GET和POST请求,不支持其他方法;

2. form会触发页面跳转,有时会带来不便;

http://www.lryc.cn/news/305781.html

相关文章:

  • Mysql中INFORMATION_SCHEMA虚拟库使用
  • 【《高性能 MySQL》摘录】第 2 章 MySQL 基准测试
  • 常用的Web应用程序的自动测试工具有哪些
  • 人工智能与开源机器学习框架
  • 高通XBL阶段读取分区
  • [极客大挑战2019]upload
  • [FastDDS] 基于eProsima FastDDS的移动机器人数据中间件
  • 实现外网手机或者电脑随时随地远程访问家里的电脑主机(linux为例)
  • spring boot集成redis
  • Docker的常用命令
  • JSON简介与基本使用
  • 好物周刊#40:多功能文件管理器
  • 【洛谷 P8780】[蓝桥杯 2022 省 B] 刷题统计 题解(贪心算法+模拟+四则运算)
  • 【蓝桥杯入门记录】静态数码管例程
  • 6.openEuler系统服务的配置和管理(二)
  • 一招鲜吃遍天!ChatGPT高级咒语揭秘:记忆、洗稿、速写SEO文章(一)
  • LeetCode 每日一题 2024/2/19-2024/2/25
  • Javaweb之SpringBootWeb案例之配置优先级的详细解析
  • GO框架基础 (三)、xorm库
  • 神经网络系列---回归问题和分类问题
  • Jetpack Compose 与 Kotlin 的兼容性对应关系
  • 汇编反外挂
  • 134 Linux 系统编程11 ,readlink命令,文件目录rwx权限差异,目录操作函数
  • 仿12306校招项目业务二(列车检索)
  • 前端架构: 实现脚手架终端UI样式之ANSI escape code, Chalk, Ora介绍
  • platform(驱动层+应用层)实现终端和中断开关点灯
  • 黑马JavaWeb开发跟学(一)Web前端开发HTML、CSS基础
  • Nest.js权限管理系统开发(四)Swagger API接入
  • (全注解开发)学习Spring-MVC的第三天
  • 设计模式学习笔记 - 面向对象 - 7.为什么要多用组合少用继承?如何决定该用组合还是继承?