Node.js Net 模块+DNS 模块

2021-04-07 20:26

阅读:603

标签:cli   pipe   调用   技术   name   com   function   ring   oca   

Node.js Net 模块提供了一些用于底层的网络通信的小工具,包含了创建服务器/客户端的方法

server.js

var net = require("net");

var server=net.createServer(function(connection){
    console.log("客户端连接");
    connection.on("end",function(){
        console.log("客户端关闭");
    });
    connection.write("cyy");
// 在js中,我们保存或者接收数据的时候,往往都是定义一个变量。
    // 但是如果数据量很大的话,系统就要开辟与之对应的内存,会占用较大内存
    // 这时候就用到了pipe去进行读写流操作,更加优雅的完成任务
    connection.pipe(connection);
}).listen(8080,function(){
    console.log("正在监听……");
});

技术图片

 

 

main.js

var net = require("net");

var client=net.connect({port:8080},function(){
    console.log("连接到服务器");
});
client.on("data",function(data){
    console.log(data.toString());
    client.end();
});
client.on("end",function(){
    console.log("与服务器断开连接");
});

新开一个客户端,前面那个不要关

技术图片

 

 

再回去看前面

技术图片

 

 

 

Node.js DNS 模块用于解析域名

var dns = require("dns");

//dns.lookup 将域名(比如 ‘baidu.com‘)解析为第一条找到的记录 A (IPV4)或 AAAA(IPV6)
dns.lookup("www.github.com",function onlookup(err,ip,family){
    console.log("ip:"+ip);

    //dns.reverse 反向解析 IP 地址
    dns.reverse(ip,function(err,hostnames){
        if(err){
            //打印出错误的调用栈方便调试
            console.log(err.stack);
        }
        console.log("反向解析 "+ip+":"+JSON.stringify(hostnames));
    })
})

技术图片

 

 

var dns = require("dns");

//dns.lookup 将域名(比如 ‘baidu.com‘)解析为第一条找到的记录 A (IPV4)或 AAAA(IPV6)
dns.lookup("www.baidu.com",function onlookup(err,ip,family){
    console.log("ip:"+ip);

    //dns.reverse 反向解析 IP 地址
    dns.reverse(ip,function(err,hostnames){
        if(err){
            //打印出错误的调用栈方便调试
            console.log(err.stack);
        }
        console.log("反向解析 "+ip+":"+JSON.stringify(hostnames));
    })
})

技术图片

 

 

var dns = require("dns");

//dns.lookup 将域名(比如 ‘baidu.com‘)解析为第一条找到的记录 A (IPV4)或 AAAA(IPV6)
dns.lookup("localhost",function onlookup(err,ip,family){
    console.log("ip:"+ip);

    //dns.reverse 反向解析 IP 地址
    dns.reverse(ip,function(err,hostnames){
        if(err){
            //打印出错误的调用栈方便调试
            console.log(err.stack);
        }
        console.log("反向解析 "+ip+":"+JSON.stringify(hostnames));
    })
})

技术图片

 

 

反向解析的不太理想……

Node.js Net 模块+DNS 模块

标签:cli   pipe   调用   技术   name   com   function   ring   oca   

原文地址:https://www.cnblogs.com/chenyingying0/p/12470373.html


评论


亲,登录后才可以留言!