我正在使用将 DotNetify 包裹在 Cordova 周围的 React 应用程序来构建 iOS 和 Android 应用程序。
Dotnetify 在给定的 URL 连接到 WebSocket 服务器,我们需要根据构建 web 或 Cordova 定义连接到 Socket/SignalR 服务器的主机 URL,当前行是:
dotnetify.react.connect('Login', this);
Login 的定义实际上是相对的,我需要以某种方式预先挂起主机 URL 来告诉 build WebSocket 连接到哪里。
我的假设是它应该在 Package.json 中的某个地方定义,使其如下所示:
dotnetify.react.connect('WSS://DEV.DOMAIN.COM/'+'Login', this);
对于本地开发/调试模式或在具有公共静态 IP 的服务器或生产服务器上的开发,解决此问题的最佳解决方案是什么。
我发现base_url
需要传入info
对象:node_modules/socksjs-client/lib/main.js:183
// allow server to override url used for the actual transport
this._transUrl = info.base_url ? info.base_url : this.url;
所以基于上面我试图传递参数,但是 donetify 没有将这个参数传递给 socksjs。我们如何解决这个问题?
this.vm = dotnetify.react.connect('Login', this, {"base_url":"wss://dev.domain.com"});