open
XMLHttpRequest
方法的签名如下所示:
void open(DOMString method, DOMString url, optional boolean async, optional DOMString? user, optional DOMString? password);
open
的第三个参数是async
。设置为false时,XMLHttpRequest对象变为同步,这意味着它将阻止执行进程,直到请求完成为止。
如果getUrlSync(String url)
选项设置为async
,我想知道是否可以编写(包装)函数true
。如果是这样,这可能是将异步API转换为同步API的一般方法。
我知道强制异步API同步很糟糕,但我只是好奇是否有可能..
我认为这样做并不简单。要检查HTTP请求是否已完成,需要在while
循环内进行轮询。但是由于Javascript处于单线程环境中,因此解释器似乎永远在while
循环中卡住,并且永远不会执行延迟< / strong> HTTP请求..这有意义吗?
有没有人对此有任何想法?