Ajax(4)

96 阅读2分钟

image.png XMLHttpRequest 是浏览器内置的一个构造函数

作用:基于new出来的XMLHttpRequest实例对象,可以发起Ajax的请求,axios中axios.get(),axios.post(),axios()方法,都是基于XMLHttpRequest(简称:XHR)封装出来的

使用XMLHttpRequest发起get请求

//主要的4个实现步骤
//1.创建xhr对象
//2.调用xhr.opend()函数
//3.调用xhr.send()函数
//4.监听load事件
let xhr = XMLHttpRequest()
xhr.open('get','http://xxx.com/api/xx')

xhr.send() //请求

xhr.addEventListener('load',function(){

})('load',function(){
console.log(xhr.response) //响应
//load事件也可以放到前面
})

请求时携带URL参数或提交请求体URL参数只能拼接在URL地址后面请求体放到send()里面

let xhr = XMLHttpRequest()

xhr.addEventListener('load',function(){
 console.log(xhr.response)
})
//将请求体参数拼接到url后面
xhr.open('请求方式','http://xxx.com/api/xx?id=1&name=ming')

xhr.send(请求体)

提交请求体数据,需指定Content-Type头

当需要提交请求体数据时,需要在xhr.open()之后,调用xhr.setRequestHeader()函数,知道请求体的编码格式

let xhr = XMLHttpRequest()

xhr.addEventListener('load',function(){
 console.log(xhr.response)
 //将请求参数拼接到url后面
 xhr.open('post','http://www.iitcbc.com/api/post')
 //根据请求体格式的不同,需设置对于的Content-Type头
 xhr.setRequestHeader('Content-Type值
 ','值')
 
 //xhr.send('name=ming&gae=18')

请求体格式和对应的Content-Type值

image.png

image.png

数据交换格式

数据交换格式,就是服务器端与客户端吧直接的数据传输的格式 1.XML(少用),2.JSON(主流)

image.png

image.png

JSON数据

用字符串的方式来表示对象或数组类型的数据,叫做JSON数据 1.对象格式,2.数组格式

JSON的语法要求

1.属性名必须使用双引号包裹
2.字符串类型的值必须使用双引号包裹
3.JSON中不允许使用单引号表示字符串
4.JSON中不能写注释
5.JSON的最外层必须的对象或数组格式(其他类型也可以,但多数是对象或数组格式)
6.不能使用undefined或韩式作为JSON的值

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png