Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 使用ASP.NETMVC&;node.js在一起_Asp.net Mvc_Asp.net Mvc 3_Node.js_Socket.io_Iisnode - Fatal编程技术网

Asp.net mvc 使用ASP.NETMVC&;node.js在一起

Asp.net mvc 使用ASP.NETMVC&;node.js在一起,asp.net-mvc,asp.net-mvc-3,node.js,socket.io,iisnode,Asp.net Mvc,Asp.net Mvc 3,Node.js,Socket.io,Iisnode,我正在编写一个ASP.NETMVC应用程序,它连接到SQL数据库并使用我现有的C#库 我还有一个TCP服务器Windows应用程序,它通过XML发送/接收TCP消息。我已经成功地设置了node.js和socket.io来处理所有这些问题,并且有一个向服务器发送/接收消息的html页面。Node.js目前正在提供html页面。发送/接收数据时,XML转换为JSON 我正计划设置我的MVC应用程序来为页面提供服务,但我只是想知道您对跨框架设置的使用有何想法。对于处理TCP消息并将其发送到浏览器来说,

我正在编写一个ASP.NETMVC应用程序,它连接到SQL数据库并使用我现有的C#库

我还有一个TCP服务器Windows应用程序,它通过XML发送/接收TCP消息。我已经成功地设置了node.js和socket.io来处理所有这些问题,并且有一个向服务器发送/接收消息的html页面。Node.js目前正在提供html页面。发送/接收数据时,XML转换为JSON


我正计划设置我的MVC应用程序来为页面提供服务,但我只是想知道您对跨框架设置的使用有何想法。对于处理TCP消息并将其发送到浏览器来说,它似乎是可行的、好的解决方案吗?我还阅读了有关在IIS中托管节点的内容,我想这对我的设置是个好主意。你对此有什么想法?

你基本上有两个网站。一个是你的ASP.NETMVC网站。另一个是TCP windows应用程序的web客户端

因为它们是不相交的,所以可以很好地工作

您可能希望通过ASP.NET MVC让web客户端的html服务器运行,并且只在node.js上运行websocket服务器。您可能需要执行一些代理以使同一原点正常工作

如果您从运行IP Y、端口X的Web服务器上发送HTML页面,然后尝试与运行IP Y、端口X+n的node.js websocket服务器通信,则可能会违反同一来源限制

这意味着您基本上是从服务器a加载一个socket.io客户端,然后尝试与服务器B对话。网页不知道您同时拥有这两台服务器

解决方案是代理,您将所有请求代理到服务器a和B,但由于它们都通过代理,因此不会违反相同的来源


至于代理,nginx就是其中之一。有一个问题。IIS可能可以为您代理它(尽管我怀疑IIS是否是一个好的代理)

我将有一个网站,并将有一个web服务器提供页面,但您是对的,我有一个用于TCP应用程序的web客户端/套接字服务器,该应用程序将数据发送到网页。您知道iisnode吗?@Jon iisnode听起来像是一个讨厌的东西,我会远离它。唯一的使用案例是欺骗sys admin/management在windows商店中安装node.js。你的回答中的代理是什么意思?@Jon see编辑。只有当您不从节点为socket.io服务web客户端时,才需要代理。从node还是ASP.NET MVC为web客户端提供服务更优雅,这也是一个混淆