有没有办法伪造同步XHR请求?

Mic*_*hop 9 javascript asynchronous xmlhttprequest synchronous web-worker

我正在使用Emscripten系统将一堆C++代码移植到Javascript.C++代码有许多调用,fopen它是一个同步IO调用.在Emscripten,我们模拟这种使用XHR请求本地资源但是,火狐同步XHR调用内(用responseTypeblobarraybuffer)仅一个网络工作者中支持.转换所有c ++代码以适应异步IO代码似乎非常复杂,所以对于我的第一次尝试,我想看看我是否可以伪造同步XHR请求.

我最初的想法是,主循环可以与web-worker共享一些状态,这可以进行同步io调用并在主循环暂停并等待web-worker完成时更新共享状态.免责声明:我知道这不是典型的Javascript方式,但我正在移植同步代码,而不是从头开始编写新代码(我肯定会使用异步IO).

鉴于Web工作者和主循环之间共享状态的限制,这个想法看起来站不住脚.

还有其他方法吗?

小智 1

您看过像 qunit 和 sinon 这样的测试库吗?我想茉莉或许也能做到,但我知道诗乃可以做到这一点

http://sinonjs.org/docs/#server