当“异步”选项为真时,使XMLHttpRequest同步?

XMLHttpRequestopen方法的签名如下所示:

void open(DOMString method, DOMString url, optional boolean async, optional DOMString? user, optional DOMString? password);

open的第三个参数是async 。 当设置为false时,XMLHttpRequest对象变成同步的,这意味着它将阻止正在执行的进程,直到完成请求为止。

我想知道如果async选项设置为true是否可以编写一个(包装)函数getUrlSync(String url) 。 如果是这样,这可能是将异步API转换为同步API的一般方法。

我知道强制一个异步API同步是可怕的,但我只是好奇它是否可能..

我认为做这件事并不简单。 要检查HTTP请求是否完成,在一个while循环内需要轮询。 但是,由于Javascript是在单线程环境中,intepreter将永远停留while循环中,永远不会执行延期的 HTTP请求。这是否有意义?

有没有人对此有任何想法?

链接地址: http://www.djcxy.com/p/55341.html

上一篇: Make XMLHttpRequest synchronous when "async" option is true?

下一篇: Synchronous XMLHttpRequest is depreciated