nodejs做的一个测试端口程序

  最近在学习nodejs的http,然后做了一个测试域名有没有使用那些端口,原意是用来做一个本地的静态服务器,然后运行前先测试端口,首先要用到的是net模块,主要用到的是Socket,判断其连接状态即可实现,代码如下:

var net = require('net'),socket = net.Socket;

先是模块的引用。

接着下面是一个简单的实现:

复制代码
var testPort = function(port,host,cb){
            var nsk = new socket();


            nsk.setTimeout(5000);//设置连接超时时间  5s
            nsk.on('connect',function(){//连接状态
                nsk.destroy();//销毁
                cb(port,'open');
            })
            .on('timeout',function(){//连接超时
                nsk.destroy();
                cb(port,'timeout');
            })
            .on('error',function(){//连接错误
                nsk.destroy();
                cb(port,'closed');
            });

            nsk.connect(port,host);//执行连接
        };
复制代码

port为端口号,host为域名(IP也可以),分为三种状态 open、timeout、closed (在使用、超时、关闭的),那么运行的方法如下:

testPort(80,'127.0.0.1',function(port,status{
console.log(port,status)
})

 

posted @ 2014-01-16 09:42  subying  阅读(674)  评论(0)    收藏  举报
编辑推荐:
· 还在手写JSON调教大模型?.NET 9有新玩法
· 复杂业务系统线上问题排查过程
· 通过抓包,深入揭秘MCP协议底层通信
· 记一次.NET MAUI项目中绑定Android库实现硬件控制的开发经历
· 糊涂啊!这个需求居然没想到用时间轮来解决
阅读排行:
· Coze Studio:字节跳动 Coze 的开源版本来了!第一时间深度解析
· 为大模型 MCP Code Interpreter 而生:C# Runner 开源发布
· 复杂业务系统线上问题排查过程
· 独立开发:高效集成大模型,看这篇就够了
· 在SqlSugar的开发框架的Vue3+ElementPlus前端中增加对报表模块的封装处理,实现常
点击右上角即可分享
微信分享提示