Ajax 的基本用法-1与Ajax的基本用法-2
Ajax 的基本用法-1
XMLHttpRequest
Ajax想要实现浏览器服务器之间的异步通信,需要依靠XMLHttpRequest,它是一个构造函数
不论是XMLHttpRequest,还是Ajax,都没有和具体的某种数据格式绑定
Ajax的使用步骤
创建xhr对象
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Ajax的基本用法</title> </head> <body> <script> //console.log(Ajax); //1.Ajax的使用步骤 //2.1创建xhr对象 console xhr =new XMLHttpRequest(); //2.2准备发送请求 /* xhr.open( 'HTTP方法GET、POST、PUT、DELETE', '地址 URL https://www.imooc.com/api/http/search/suggest?words=js./index.html./index.xml./index.txt',true); */ // 调用open并不会真正请求发送,而只是做好发送请求前的准备工作 // 2.3.发送请求 //调用send()正式发送请求 //send()的参数是通过请求体携带的数据 //xhr.send(null); //2.4监听时间,处理响应 //当获取到响应后,会触发xhr对象的readystatechange事件,可以在该事件中对响应进行处理 //xhr.addEventListener('readystatechange',()=>{},false); /* xhr.onreadystatechange = () =>{ if(xhr.readyState!==4) return; //HTTP COOE //获取到响应后,响应的内容会自动填充xhr对象的属性 if(xhr.status>=200&xhr.status <300|| xhr.status === 304){ //console.log('正常使用响应数据'); console.log(xhr.responseTest); } }; */ //readystatechange 事件也可以配合addEventListener使用,不过要注意,IE6~8不支持addEventListener //为了兼容性,readystatechange中不使用this,而是直接使用xhr //readystatechange事件监听readyState 这个状态的变化 //它的值从0~4,一共五个状态 /* 0:未初始化。尚未调用open() 1:启动。已经调用open),但尚未调用send() 2:发送。已经调用send(),但尚未接收到响应 3:接收。已经接收到部分响应数据 4:完成。已经接收到全部响应数据,而且已经可以在浏览器中使用了 */ </script> </body> </html>
使用Ajax完成前后端通信
Ajax的基本用法-2
使用Ajax完成前后端通信
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Ajax的基本用法</title> </head> <body> <script> //console.log(Ajax); //1.Ajax的使用步骤 //2.1创建xhr对象 //console xhr =new XMLHttpRequest(); //2.2准备发送请求 /* xhr.open( 'HTTP方法GET、POST、PUT、DELETE', '地址 URL https://www.imooc.com/api/http/search/suggest?words=js./index.html./index.xml./index.txt',true); */ // 调用open并不会真正请求发送,而只是做好发送请求前的准备工作 // 2.3.发送请求 //调用send()正式发送请求 //send()的参数是通过请求体携带的数据 //xhr.send(null); //2.4监听时间,处理响应 //当获取到响应后,会触发xhr对象的readystatechange事件,可以在该事件中对响应进行处理 //xhr.addEventListener('readystatechange',()=>{},false); /* xhr.onreadystatechange = () =>{ if(xhr.readyState!==4) return; //HTTP COOE //获取到响应后,响应的内容会自动填充xhr对象的属性 if(xhr.status>=200&xhr.status <300|| xhr.status === 304){ //console.log('正常使用响应数据'); console.log(xhr.responseTest); } }; */ //readystatechange 事件也可以配合addEventListener使用,不过要注意,IE6~8不支持addEventListener //为了兼容性,readystatechange中不使用this,而是直接使用xhr //readystatechange事件监听readyState 这个状态的变化 //它的值从0~4,一共五个状态 /* 0:未初始化。尚未调用open() 1:启动。已经调用open),但尚未调用send() 2:发送。已经调用send(),但尚未接收到响应 3:接收。已经接收到部分响应数据 4:完成。已经接收到全部响应数据,而且已经可以在浏览器中使用了 */ //3.使用Ajax完成前后端通信 const url ='https://www.imooc.com/api/http/search/suggest?words=js'; const xhr =new XMLHttpRequest(); xhr.onreadystatechange = () =>{ if(xhr.readyState!== 4) return; if(xhr.status>= 200&&xhr.status < 300 ||xhr.status===304){ console.log(xhr.responseText); } }; xhr.open('GET',url,true); xhr.send(null); </script> </body> </html>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)