同步请求返回值
发表于:2023-05-22 |

最近在公司中,有一个需求,业务逻辑我就不阐述了,就是需要调用一个函数,return出去的值需要等待请求结束完成之后再去执行,这个需求我一开始是这样写的,用封装之后的axios请求的request发送请求,然后我发现return不出去值,之后我也尝试了使用return new Promise和async,await,这两种方法都是可以return出去一个promise,但是这个方法是js注入,全局挂载给其它系统调用这个系统使用的,他那么解析不了promise对象,必须要返回一个普通的对象,我查了挺多文档,最后发现,居然可以返璞归真,使用最简单的xhrHttpRequest请求,这个由于工作中真的不常用,一时半会还真的忘记了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
const xhr = new XMLHttpRequest();
// 第三个参数就是同步请求的意思
xhr.open(
"GET",
`请求地址`,
false
);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.send();
if (xhr.status === 200) {
const response = JSON.parse(xhr.responseText);
if (response.code === 200) {
return xxxxx
}

好了,本篇文章就到这里

上一篇:
【可视化学习】08-Three.js粒子特效
下一篇:
【可视化学习】07-Three.js灯光与阴影