我有一个项目,最初计划为基于HTTP的简单客户端服务器架构,服务器用Node.js编写,客户端是用C#编写的.NET Windows应用程序。
客户应该控制Windows C#app,这反过来会向服务器发送一些数据请求。
现在我正在考虑将应用程序的所有控制权移到服务器上,以便.NET应用程序具有最小的UI并且完全通过服务器上的Web UI进行控制。在这种情况下,客户登录Web应用程序,单击按钮,服务器将命令和数据发送到Windows上的C#应用程序。
当然,如果我通过HTTP进行此操作,在客户端的正确配置方面就会变得一团糟:防火墙规则必须允许从Internet连接到客户计算机,并且必须处理NAT。 / p>
有没有办法在客户端避免这些问题?例如,通过从客户端启动连接(一旦客户端软件启动)然后保持打开以便从服务器接收命令?
答案 0 :(得分:1)
从你所说的,听起来你想要websockets。
您可以将SignalR用于此http://www.asp.net/signalr/overview/getting-started/introduction-to-signalr
如果您想使用Meteor,您也可以使用DDP。您可以将此.NET客户端库用于https://github.com/sonyarouje/DDPClient.NET