在我目前正在进行的一个项目中,我们使用Electron作为主机。在电子主进程(这是正常的Node进程)中,我们需要连接到具有SignalR端点的下游后端。
但是,由于SignalR是JQuery模块,而Node既不支持SignalR也不支持JQuery,因此我们有点卡住了。我看到以下选项:
数字1和2吓到我了,因为我不想调试API差异,或者只是实现中的简单错误。
引入对jsdom的依赖关系并通过它向jquery提供一个dom似乎可以解决问题:
var jsdom = require('jsdom').jsdom, document = jsdom('<html></html>');
global.window = document.defaultView;
global.window.WebSocket = require("ws");
如果以上内容是在Signalr脚本之前导入的,则可以正常工作。
更新:需要使WebSockets在窗口对象上可用,以便Websockets传输能够正常工作
祝你好运;)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句