Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.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
Javascript 创建没有端口的express服务器_Javascript_Node.js_Sockets_Http_Tcp - Fatal编程技术网

Javascript 创建没有端口的express服务器

Javascript 创建没有端口的express服务器,javascript,node.js,sockets,http,tcp,Javascript,Node.js,Sockets,Http,Tcp,我想知道是否有可能在不提供任何端口的情况下使用express创建服务器。我需要创建一个服务器,仅用于使用TCP协议与其他应用程序进行套接字连接 也许express不是最好的工具?因为express是用于web框架的,我根本不需要任何端口 目前我正在做: http.createServer(app).listen(8000, function() { console.log('Connected in port 8000'); }); 谢谢。如果您不想让http服务器监听传入的http连接,

我想知道是否有可能在不提供任何端口的情况下使用express创建服务器。我需要创建一个服务器,仅用于使用TCP协议与其他应用程序进行套接字连接

也许express不是最好的工具?因为express是用于web框架的,我根本不需要任何端口

目前我正在做:

http.createServer(app).listen(8000, function() {
  console.log('Connected in port 8000');
});

谢谢。

如果您不想让http服务器监听传入的http连接,那么您甚至不需要Express服务器,因为它是一个web服务器框架。根本不需要使用Express框架


相反,您可以只使用内置的
net
模块,并在该模块中使用普通TCP套接字函数(有关创建普通TCP服务器的信息,请参阅)。如果您要监听传入的TCP连接,您仍然需要监听特定的端口—TCP就是这样工作的。传入连接连接在特定端口上,它必须连接到侦听该特定端口的服务器。

当然,只要删除
listen
,甚至可能是
createServer
,因为它已被弃用?createServer是否已弃用?我应该用什么来代替呢?哦,等等,你可能正在使用
require('http')。createServer
这不是不推荐的,而是
express。createServer
isyeap,我在使用http:)。我有点困惑呵呵。。我在9000端口的本地主机中创建了TCP连接,因此我也需要在同一端口中创建http连接?@FátimaAlves-请澄清您的问题。客户端和服务器必须在同一端口上运行。这就是TCP的工作原理。因此,如果您在端口9000上工作,那么服务器必须在端口9000上侦听,客户端必须在端口9000上连接到服务器。没有与端口无关的TCP连接。我根本不使用客户端作为套接字。我在pub/sub模式中使用两个服务器,一个服务器正在侦听tcp://localhost:9000 另一个是在同一端口发送消息。我的问题是关于http端口的。我是否需要侦听服务器上任何只通过套接字获取消息的端口,或者不需要侦听?本例中的“客户机”是启动TCP连接的任何计算机。它必须连接到端口上的其他计算机。总是。这就是TCP的工作原理。是的,希望接收连接的服务器必须侦听端口。要创建连接的其他服务器必须连接到同一端口。所有连接都在一个端口上进行。那么,这里真正的问题是什么,还是不情愿?只需为侦听服务器和连接到另一台服务器的服务器指定端口9000。我想我还不够清楚。我了解了关于TCP协议上的端口,我想知道的是,是否有必要在服务器上侦听HTTP协议上没有HTTP请求的任何端口,如果答案是肯定的,如何使用express创建服务器而不侦听HTTP端口。