javascript - node.js网络编程怎么学?

查看:73
本文介绍了javascript - node.js网络编程怎么学?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

之前没学套接字编程,在看深入浅出node.js。看到网络编程这块,不知道如何下手,看node官方文档也不知道该怎么做。比如书上第一个例子:

var net = require('net')

var server = net.createServer( function (socket){
    socket.on('data',function(data){
        socket.write("你好")
    })

    socket.on('end',function(){
        console.log('连接断开')
    })

    socket.write("欢迎光临")
} )

server.listen(8124,function(){
    console.log('server bound')
})

书上利用Telnet工具作为客户端,输出
欢迎光临
hi
你好

上面代码有部分书上没解释,'data' 事件是在官网查到的,可有些太容易的官网估计也不会写
书上写connection:每个客户端套接字连接到服务端时触发,简洁写法为net.createSever(),最后一个参数触发。所以上面代码中的 function (socket)函数在客户端套接字连接到服务端时被触发了?
还有上面代码实现 客户端套接字连接服务端 的部分在哪?客户端套接字和服务端套接字怎么区分。

解决方案

给你注释一下吧,客户端和服务端


var server = net.createServer( function (socket){
    socket.write("欢迎光临");//有一个客户端第一次连接时触发
    socket.on('data',function(data){
        console.log(data)//客户端发送的信息
        socket.write("你好")//向客户端推送信息
    })

    socket.on('end',function(){
        console.log('连接断开')//连接断开时触发
    })
} )

客户端

var socket = new WebSocket('ws://localhost:8080'); //初始化一个soket连接

// 打开Socket 触发服务端端 欢迎光临
socket.onopen = function(event) { 
  // 发送一个消息 触发服务端data事件   
  socket.send('向后台发送了一条消息'); 

  //接收服务端推送的消息  你好
  socket.onmessage = function(event) { 
    console.log('接收到了后台的消息',event); 
  }; 

  //服务端关闭socket时触发
  socket.onclose = function(event) { 
    console.log('后台关闭socket',event); 
  }; 
  // 客户端关闭socket时触发 服务端 end事件 连接断开
  //socket.close() 
};

这篇关于javascript - node.js网络编程怎么学?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆