SignalR,JQuery和Node

雷·布伊森

在我目前正在进行的一个项目中,我们使用Electron作为主机。在电子主进程(这是正常的Node进程)中,我们需要连接到具有SignalR端点的下游后端。

但是,由于SignalR是JQuery模块,而Node既不支持SignalR也不支持JQuery,因此我们有点卡住了。我看到以下选项:

  1. 看一下节点中的一些JQuery实现,由于我们使用的是webpack,因此将其而不是普通的JQuery注入SignalR
  2. 使用不受支持的(和旧的)NodeR NodeR版本
  3. 有一个不可见的隐藏浏览器窗口,它将托管SignalR和JQuery位,并将它们代理到IPC上的主进程
  4. 我自己编译JQuery,仅包括SignalR所需的模块
  5. 友善的人们会帮助我的其他事情。:)

数字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] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章