我的账户
猩码学苑

专注C++开发菁英教育

亲爱的游客,欢迎!

已有账号,请

如尚未注册?

彭婉嘉-20230609

[复制链接]
鱼小仙 发表于 2023-6-14 18:58:18 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
今日学习内容:

1. post表单提交

![1550042416735](./assets/1-1657856862748.png)

1) post表单提交的必要条件

- 必须有form标签
  - action:表单数据提交的位置,必须是一种后端技术来接收
  - method: 表单提交的方式,post(常用)、 get(默认)
- 每个表单域都要有name属性和值
- 必须要有submit按钮来提交表单数据

2) 后端接收 --- post方式

- data事件:用来接收表单数据,表单数据会被切割成一块一块,data事件会循环来接收
- end事件: 当表单数据接收完毕后会自动触发,此时可以操作表单提交的数据
- querystring模块处理数据
3 每种表单域提交的方式
  表单标签: form 、 ==input 、 select 、 textarea==
  ==表单提交的实际上是每个域的value值==
  特殊:
   select-option:
name要定义在select标签中
value要定义在每个option标签中
textarea:
  name定义在textarea中
  value就是开始和结束标签之间内容
## 3 .1get方式提交表单
核心:
- 将method值改为get就是get方式提交表单
- get方式提交表单数据时,数据会以字符串方式显示在地址栏
- 显示方式: key1=value1&key2=value2&key3=value3&...
- 示例: name=zs&passwd=123

4 get和post的区别

==通过URL地址栏来区分post和get==

1) 提交方式

- get会将数据显式的拼接到url地址栏中  (字符串)

  例如: /form==?==id=10001==&==username=heiheihei==&==passwd=123456&key=value....
  key=value方式传参,多个参数之间使用&符号隔开

     id、username、passwd等等(键/key)都是表单域的name值
   1、heiheihei、123456等等(值/value)都是表单域的value值- post不会显示出来: 通过 request body 传递参数。
   2)、传递数据量大小
        post最小值是2M,理论上没有上限的。
        get会受到浏览器的地址栏的限制。有的是2k(IE6),有的是8K(chrome)
   3) 应用范围不一样
- post在绝大多数情况下都使用在表单提交中。
- get的应用范围比较广,只要能进行页面跳转,就能传递数据。在a标签的href中,location.href中等都能使用get方式。
# 1. http协议
## 1.1 http协议概述
- 协议: 就是事先的一种约定、规则、规范、标准。(租房合同、工作合同)

- HTTP协议(HyperText Transfer Protocol ):超文本传输协议,客户端(==浏览器==)与Web服务器端之间的交互协议。当浏览器和服务器进行数据交换时,html文件、图片、CSS、JS等都是基于HTTP协议进行传输的

- HTTP协议有两个版本: 1.0 和 1.1,目前使用的基本都是1.1
- 特点:
  - 通常是基于 B/S 结构软件的
  - 无连接: 浏览器向服务器发送一次请求,服务器响应一次,链接即结束
  - 无状态: 无记忆。 服务器不能记住哪个浏览器访问过

- HTTP协议主要分为两大部分:

  - 请求:  访问服务器的任何一个文件都是一次请求
  - 响应:  服务器处理请求,将结果返回给浏览器

  **https协议:用SSL/TLS对通信数据进行加密和安全认证,安全性更好,因此https比http耗费更多服务器资源。**
## 4.1 请求协议/请求报文

==请求报文==分为3个部分:  请求行   请求头   请求体

- 请求行:  请求方式、请求URL地址、协议版本号
- 请求头:  主机域名和端口号,客户端(浏览器)的信息等
- 请求体:  发送给服务器的数据,get和post都会通过请求主体将数据发送给服务器

可以使用Chrome tools 或者 firebug 来查看请求和响应的信息(F12)

主要请求项:
- host: 主机名和端口号,80端口默认不显示
- accept:浏览器可接受的程序/文件类型
- accept-encoding: 浏览器可接受的压缩类型
- accept-language: 浏览器可接受的语言类型
- connection: keep-alive   持久化连接

回复

使用道具 举报

关注0

粉丝0

帖子26

发布主题
大家都在学
课堂讨论
一周热帖排行最近7x24小时热帖
关注我们
专注C++菁英教育

客服电话:18009298968

客服时间:9:00-21:00

猩码学苑 - 专注C++开发菁英教育!( 陕ICP备2025058934号-1 )

版权所有 © 陕西菁英数字科技有限公司 2023-2026