首页 > 技术文章 > pinus学习(4)

dmc-nero 2020-03-10 19:00 原文

 本篇学习:

  1、channel的概念。

  2、后端服务器代码编写。

  3、channel和客户端的信息传递。 

 

Channel的概念:

  

  大致意思:

    1、channel可以看做是一个房间。

    2、当客户端进入房间时,可以把客户端加入channel。

    3、channel可以给所有加入的客户端广播消息。

    4、各个服务器之间的channel是独立的,并不共享。

 

后端服务器代码编写:

{

  思路大纲:

    1、当客户端连接服务器时,将客户端加入channel,

       并返回当前channel中所有加入的客户端。

    2、当客户端断开服务器时,将客户端踢出channel。

        

  思路实现:

    1、当客户端连接服务器时,将客户端加入channel,

       并返回当前channel中所有加入的客户端。

        1、添加一个add方法,用来处理客户端加入channel。

          

        2、添加一个getUsersName方法,用来返回指定channel里所有客户端的名字。

          

    2、当客户端断开服务器时,将客户端踢出channel。

      1、添加kick方法,用来处理用户断开服务器时的逻辑。

        

 

  代码全貌:

    

 

  可见,现在代码还有很多没有完善。

  我打算放到后面再慢慢讲其他的API用法,这样便于分块理解。

}

 

channel和客户端的信息传递。:

  1、服务端通过channel.pushMessage()这个API推送消息给客户端。

    

    但是现在我碰到难题了:

      报了这个错误:

        

      群里的大大们也在帮忙,感谢大大们,虽然还没解决:

        

        

 

  2、客户端通过pinus.on()这个API接收消息。

    

 

 

附上项目git地址:https://gitee.com/dmc-nero/pinusDemo

 

大佬出马了,太牛了:

  

 

天啊。。。又出现了了一个问题:

  

 

  杀掉node进程后,现在日志输出都没有颜色了。

  这又是一个伤神的问题,我得慢慢去查资料了。

  找到原因了:

    1、修改了 log4js.json 配置文件。

      是由于之前为了把日志导出为txt,所以我把 log4js.json 文件修改了。

      只要还原成原来的样子即可。

 

推荐阅读