一、ajax的概述
1.ajax的概念
ajax全称 asynchronous javascript And xml 异步的js和xml
作用:在页面不刷新的情况下,发送http请求,得到http响应
常见情况:地图,用户名的注册和登录,图片懒加载
2.ajax和表单提交的区别
表单提交一般使用submit,是有默认事件的,提交方式就是会刷新页面,一旦触发,要么刷新要么跳转
ajax“异步”提交,是根据用户触发的“事件”更新页面“部分”内容,不进行页面的发送
3.同步和异步
同步会阻塞程序的执行,异步不会阻塞程序的执行
主要功能是客户端与服务器端交互,但交互是取决于事件、网速、数*// 那么久 据的大小
同步:用户在客户端触发一个程序,该程序要发送请求,还要等待请求结果,再渲染给用户看,这个过程中其他程序均不可被触发,等待上一个程序执行完后,下一个再开始
异步:用户在客户端触发一个程序,该程序正常发送请求等待响应,此时用户再,前触发其他程序均可,此时前一个程序会等待响应后再进行处理,不妨碍用户在等待过程中触发其他程序的运行
4.如何使用异步交互
想要使用异步交互,就需要使用js提供的一个叫XMLHttpRequest对象与服务器通信,这个就是 ajax 的 j 的部分,就是JavaScript----使用js的一个对象的功能和方法完成“交”和“拿”这两件事。
交互的数据,使用xml,html,text,json
二、HTTP
1.http概述
http超文本传输协议 Hyper Text Transfer Protocol
http就是计算机世界里专门用两点之间(客户端和服务器端)传入超文本数据的规定和规范
两点之间-------请求方:客户端和响应方:服务器端
超文本-------文本,图片,音频,视频等
-https,是由http和ssl协议构建的可进行加密传输和身份认真的网络协议,比http协议安全性更高
2.http请求的过程
(1)浏览器从地址输入框输入服务器的ip和端口号或者域名 【见:url地址协议ip端口】
(2)浏览器用TCP协议的三次握手与服务器建立连接 【见 TCP】
(3)浏览器向服务器发送请求,请求的格式叫‘请求报文’ 【见 请求报文】
(4)服务器收到请求报文后,处理请求,再拼好“响应报文”发给浏览器 【见 响应报文】
(5)浏览器使用JS解析”响应报文“,拿到数据,渲染画面
请求报文
客户端向服务器端发送的请求内容需要共同格式叫做“请求报文”
请求行 | 请求的类型 如:get/post 向服务器请求的url地址:HTTP/1.1协议版本 |
请求头 | 如:客户端接收语言类型、连接目标主机和端口号、浏览器使用的版本、 客户端暂存信息等等 |
空行 | |
请求体 | 如是get请求,请求体为空,因为请求参数都在url地址后面拼接着呢 如是post请求,请求体可以不为空,格式是拼接好的专有格式 如name=tom&age=8 |
响应报文
服务器端向客户端发送响应的固定格式交“响应报文”
响应行 | HTTP1.1协议版本 响应状态码,如:200 响应的状态字符串,如:ok |
响应头 | 如:服务器端发送的语言类型,服务器端发送类型的编码格式、服务端压缩编码类型等等 格式----参数名:参数值 如: key:value |
空行 | |
响应体 | 主要的返回结果,可以是json或者html标签等都可以 接收后再用js解析 |
3.请求类型
HTTP1.1版本中规定了很多类型,注意单词必须大写
GET 查 | 从服务器获取资源,资源可以是任何类型,文本、图片、视频、音频等 |
POST 增 | 主要向服务器提交数据,相当于写入或者上传 |
PUT 改 | 类似于POST,POST有新增含义,put有修改含义 |
DELETE 删 | 删除资源 |
4.响应状态码
也叫http状态码,在响应报文中体现。使用http协议上网,处理上网的请求,服务器返回的请求结果,有状态码和状态码字符串
1**信息性状态码 | 服务器接收请求需要请求者继续执行后续操作 |
2**成功 | 报文已经收到,并正确处理 |
3**重定向 | 如果资源已被移动,可以发送一个重定向的状态码,告诉浏览器,资源的新地址,浏览器会按照新地址重新定位 |
4**客户端错误 | 反馈客户端某种错误,一般由浏览器负责处理 |
5**服务器内部错误 | 服务器处理请求时,服务器内部发生了错误 |
常见的状态码:
200 | 请求成功 |
301 | 资源被转移到其他的url中 |
403 | 权限不足 |
404 | 资源无法找到 |
500 | 服务器错误 |