首页 > 试题广场 >

请简述XMLHttpRequest、JSONP的适用场景,并

[问答题]
请简述XMLHttpRequest、JSONP的适用场景,并针对两种请求形式简述如何检测请求错误
1)、XMLHttpRequest是一个API内置对象,用来实现浏览器端与服务器端异步请求,实现http通信,适用于不刷新整个页面就能更新局部数据的场景,错误检测是该对象的readystate和status来判断:readyState表示当前XMLHttpRequest对象处于什么状态,
0:初始化,XMLHttpRequest对象还没有完成初始化
1:载入,XMLHttpRequest对象开始发送请求
2:载入完成,XMLHttpRequest对象的请求发送完成
3:解析,XMLHttpRequest对象开始读取服务器的响应
4:完成,XMLHttpRequest对象读取服务器响应结束
status能获取服务端的http响应状态码,当readystate===4时根据status时状态码可以判断http请求错误
2)、JSONP是一种解决跨域的方式,原理应用<script><img><iframe>这些标签不受同源限制,JSONP的异常判断一般是onerror事件和超时timer来判断
发表于 2020-09-08 13:46:21 回复(0)
XMLHttpRequest 是js里面 ajax请求xml数据使用的对象,jsonp是服务器端请求的一个数据对象,请求的数据是json格式,

解析到dom里面的数据是xml格式的数据,

发表于 2020-07-29 16:03:13 回复(0)
1、XMLHttpRequest一般用于不需要跨域的场景,可以实现异步请求实现页面的不刷新修改,支持GET、POST请求。如果需要跨域的话,需要配置CROS的请求头信息支持。
2、JSONP一般用于跨域场景,只支持GET请求。
3、XMLHttpRequest的异常判断一般使用过readyState和http的status状态码来判断的。
4、JSONP的异常判断是onerror和超时timer判断的
发表于 2022-06-27 16:54:46 回复(0)
XMLHttpRequest适用的场景在客户端浏览器向服务端请求数据的一种api,JSONP他的适用场景是客户端浏览器和服务器之间存在跨域的一种回调数据请求的方式,XMLHttpRequest检测错误,有两种,一般是通过try和catch来捕获请求数据的异常,一种是通过promise异步封装来捕获异常,对于JSONP来说,也可以通过promise封装来捕获异常
发表于 2020-08-28 23:14:41 回复(0)
XMLHttpRequest:适用于同源网络请求,可设置异步或同步阻塞。

JSONP:通过仿造<script>标签,进行跨域请求。

发表于 2020-07-16 18:42:15 回复(0)