发布时间:2023-07-05 09:30
题目点评
Ajax 是在工作中是必用的技术,在面试中十有八九会问的,答题的思路最好先回答原生态Ajax使用的步骤,最后告诉面试官,我们在工作中是使用Jquery来实现Ajax请求和处理的。在回答的时候尽量详尽,包括方法的参数的个数,顺序和作用,以免被面试官抓住不放。不给面试官提问的机会,那你的回答就牛逼了!
Ajax是什么
我理解Ajax 是一种异步请求数据的一种技术,对于改善用户的体验和程序的性能很有帮助。
Ajax的使用
以下步骤,如果不能理解你死记硬背都要记下来,总比你答不出来要好吧!
1.创建Ajax核心对象XMLHttpRequest
var xmlhttp;
if (window.XMLHttpRequest)
{// 兼容 IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// 兼容 IE6, IE5
xmlhttp=newActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open(method,url,async);
send(string)
send(string)方法post请求时才使用字符串参数,否则不用带参数。
注意:post请求一定要设置请求头的格式内容
xmlhttp.open("POST","ajax_test.html",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("fname=Henry&lname=Ford");
3.服务器响应处理
responseText 获得字符串形式的响应数据。responseXML 获得XML 形式的响应数据。
3.1 同步处理
xmlhttp.open("GET","ajax_info.txt",false);
xmlhttp.send();
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
直接在send()后面处理返回来的数据。
3.2 异步处理
异步处理相对比较麻烦,要在请求状态改变事件中处理。
xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 &&xmlhttp.status==200) { document.getElementById("myDiv").innerHTML=xmlhttp.responseText; } }
一共有5中请求状态,从0 到 4 发生变化。
0: 请求未初始化
1: 服务器连接已建立
2: 请求已接收
3: 请求处理中
4: 请求已完成,且响应已就绪
xmlhttp.status:响应状态码。这个也是面试比较爱问的,这个必须知道4个以上,比较常见的有:
200: "OK"
403 (禁止) 服务器拒绝请求。
404 (未找到) 服务器找不到请求的网页。
408 (请求超时) 服务器等候请求时发生超时。
500 (服务器内部错误) 服务器遇到错误,无法完成请求。
VC++如何实时感知Windows系统进入和退出待机状态(附源码)
面试中 项目遇见的难点答案_你和offer之间只差这几个面试问题!常见面试问题汇总...
[ROC-RK3568-PC] [Firefly-Android] 10min带你了解中断GPIO的使用
独立产品灵感周刊 DecoHack #20 - 如何停止来自金钱的压力
Python中小海龟turtle.circle()函数的理解
非饱和激活函数ReLu为什么比饱和激活函数sigmoid、tanh好
你或许也想拥有专属于自己的AI模型文件格式(推理部署篇)-(8)
这Python100道练习题及答案送给你,学完直接上手做项目