1. 复习
-
传参
form表单
1,action : 传参的对象,地址 PHP文件
2,method : 传参的方式,get/post
3,enctype: 上传文件的格式 multipart/form-data标签:
有name属性,作为容器,传参标签参数
name属性值,就是php程序中,数组的索引键名
如果多个标签name属性相同,value数据不同,name属性要添加[]
多文件上传,给input-file 添加多选属性 multiple name添加[]a超链接
必须遵守严格的语法规范<a href="url地址?键名=数值&键名=数值&键名=数值">传参</a>
超链接只能是get方式传参
总结:
form表单传参和超链接传参,都必须要跳转页面
PHP后端程序,使用预定义变量来存储前端你参数
$_GET 存储get方式传参
$_POST 存储post方式传参
$_FILES 存储上传文件信息
以数组的形式存储,需要使用 $预定义变量[索引键名]来获取具体的数据
索引键名就是前端标签,name的属性值 -
http协议
网络传输协议的一种
发起请求
3次握手 :
3次握手,是在发送正式请求之前
服务器和客户端,确认彼此都可以正常执行运行
3次握手没有问题之后,才是正式发送请求第一次,客户端—服务器
客户端:知道客户端可以发送消息
服务器:知道客户端可以发送消息
知道服务器可以接收消息第二次,服务器—客户端
客户端:知道服务器可以接收消息
知道服务器可以发送消息
知道客户端可以接收消息
服务器:知道服务器可以发送消息第三次,客户端—服务器
服务器:知道客户端可以接收消息断开请求
4次挥手
第一次:客户端—服务器
客户端告诉服务器,要准备断开连接了第二次:服务器—客户端
服务器告诉客户端,服务器知道客户端要断开连接,不再发送消息了第三次:服务器—客户端
服务器告诉客户端,服务器断开了,不会再发送消息了
但是可以接收消息第四次:客户端—服务器
客户端告诉服务器,客户端知道服务器不关闭,不再发送消息了
并且客户端不再接收消息了
但是可以发送消息 -
请求报文,响应报文
是http协议的一部分内容,负责存储请求内容和响应内容
与请求相关的所有信息,都存储在请求报文中
与响应相关的所有信息,都存储在响应报文中实际发送请求和接收响应
发送请求,不仅仅是发送的 域名www.baidu.com
还有很多相关内容和相关信息接收响应,也会有很多其他的相关信息
请求报文和响应报文,是HTTP协议的一部分,我们现在暂时不使用
只要可以看懂每部分的内容即可
2. 常见请求响应状态码
常见请求响应状态码
HTTP/1.1 200 OK
Status Code: 200 OK
两个地方都有响应状态码 表示请求是否成功的状态
返回结果 是 100-599的数值
100-199 1开头的
表示连接已经建立,正在继续执行
200-299 2开头的
表示请求已经结束,而且是成功的
300-399 3开头的
表示是重定向请求
本来想请求去A网址,实际上,是先去了B网址,再在B网址时,通过重新定向,再去A网址
百度搜索是常见重新定向
通过百度搜索去京东
先去 百度的一个网站,记录点击,方便百度收费
再通过 百度的重新定向,再去京东网站
400-499 4开头的
表示客户端错误—我们前端程序的错误
500-599 5开头的
表示服务器错误
状态码不用记,一百度,全都有
3. 常见的请求方式
常见的请求方式
GET :
存储在浏览器地址栏中
用于搜索查询数据使用,百度搜索
由于存储在地址栏中,存储数据大小受浏览器设定限制只能存储很少的内容
会被浏览器自动缓存存储
会显示在地址栏中,不安全
POST :
存储在请求体中
向数据库写入数据(注册),发送敏感信息(账号密码)
理论
上可以无限存储,但是收到服务器限制
不会被浏览器自动缓存存储
不会显示在地址栏中,比get稍微安全点
其他的请求方式:
本质上,还是POST方式请求,只是带有语义化
div nav header 等标签,效果都是想用的,只是 nav 等有语义化
实际项目中,基本使用的就是 get 和 post 两种方式
PUT
DELETE
HEAD
CONNECT
PATCH
OPTION
4. json字符串
json字符串
专门用于数据交互时使用的一种特殊的字符串
不同计算语言,相同的数据类型,语法可能不同,需要将所有的计算机语言的数据内容
转化为相同的格式,便于数据交互
计算机程序,接收到json字符串之后,再转化为当前计算机语言可以支持的数据类型
人族 精灵族 矮人族 亡灵
你好 fdas 2133 看301789
相同的内容,不同的种族,不同的语言,内容并不同
都转化为 世界通用语 阿里巴巴 所有种族所有语言都明白是表示你好
不同的种族,接收的是 阿里巴巴(json串) 再翻译成自己种族的语言
PHP 中 定义一个数组 $arr = ['name'=>'张三' , 'age'=>18];
PHP 中 数组支持字符串作为索引键名
JavaScript中,数组,只支持数值作为索引下标
PHP 中 字符串数组,就要转化为 JavaScript中 对象
不同计算机语言,都有自己定义json字符串,和将json字符串还原的方法
PHP:
json_encode() 将其他数值,转化为json字符串
json_decode() 将json字符串,还原为其他数值
JavaScript:
JSON.stringify() 将其他数值,转化为json字符串
JSON.parse() 将json字符串,还原为其他数值
5. cookie的本地存储
什么是 cookie
cookie 是浏览器的 一个功能
是 前端浏览器的一种存储机制
本质上是在浏览器内,建立一个文档文件,来存储浏览器执行页面时,产生的一些数据
这些数据是各个浏览器都要使用的公共数据,会存储在cookie
cookie本质上,一个是建立在浏览器文件夹中,存储页面公共数据的文件
什么是cookie的时效
cookie是浏览器存储数据的一种机制
cookie存储的数据,不会一直存储在浏览器的文件中
存储在文件中的数据,容易被攻击造成数据泄露
为了确保数据的安全性,cookie存储的数据,是有时效性的
也就是有存储时间,如果到达存储事件,浏览器会自动删除cookie中存储的数据
cookie的时效性,可以设定,设定的是一个时间节点
超过这个时间节点,浏览器会自动删除cookie数据
如果没有设定时效,默认是会话时间
所谓的会话时间,是浏览器打开执行前端程序的时间,也就是页面关闭,cookie就会被删除
总结: cookie的时效,要么是会话时间 session
要么是超过当前时间的时效
一定不可能是小于当前时间的时效
因为小于当前时间,cookie就会被删除,不存在了
6. cookie的设定
前端,后端程序,都可以设定cookie
JavaScript,PHP,java,python所有的语言都可以设定操作cookie
JavaScript中设定cookie
设定和读取cookie都是 document.cookie
变量 = document.cookie 是获取cookie数据
document.cookie = 聂荣 是设定cookie数据
7. cookie的获取
获取 cookie
通过 document.cookie 来获取 cookie信息