http请求
客户端
请求:浏览器通过硬件向服务器发送的过程叫请求过程
服务器
应答:接收请求以后去数据库中拿到相应的文件,通过PHP进行处理,处理的结果再返还给服务器,然后返还给客户端
数据库
http请求
(超文本传输协议)应用层
定义:一次请求和应答的过程叫http请求,只有在地址栏键入地址的时候,才能向服务器发送请求
无状态请求
如果没有请求的时候,客户端和服务器就处于分离状态
请求方式
get
post
ajax
就是一次http请求
异步javascript和XML
html 超文本标记语言
xhtml 是html和XML的过度版本
XML 可扩展的标记语言
无刷新无跳转的进行网页数据刷新
当浏览器向服务器发送请求时,js程序继续向下请求
同步
等待上一步程序执行完毕后才能进行
异步asynchronous
上一步代码进行请求时,下面的代码继续进行
ajax创建对象
let xhr=new XMLHttpRequest(); //现代浏览器
let xhr=new ActiveXObject('Microsoft.XMLHTTP');//IE浏览器
//兼容处理
let xhr=window.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject('Microsoft.XMLHTTP');
方法
get
- get 数据传递在地址栏 不安全 传递的数据量有限、很小
- get本身的意思就是获取,如果想要发送数据,建议采用post
//打开请求
xhr.open('get','login.php?aa=bb&cc=dd',true); //默认为true,异步
//发送请求
xhr.send(null);
//监测事件
xhr.onreadystatechange=function(){
if(xhr.readyState==4){
if(xhr.status==200){
console.log(JSON.parse(xhr.responseText));
//接收JOSN text XML
}
}
}
post
- 数据不会在地址栏进行传递,安全,传递的数据量比较大
- post本身的意思就是送,如果要发送数据,首选post
- 传送的数据写在
//http请求 请求头部 请求体 响应头 响应内容
//用post的方法去获取,发送数据必须设置请求头部
xhr.setRequestHeader('content-type','application/x-www-form-urlencoded');
xhr.open('post','login.php',true);
xhr.send('user=admin&pass=123456')
upload上传