node初探(1)--创建聊天服务器

本系列文章为对Node学习过程中的总结,默认Node已经安装成功,具体安装方法百度即可。


第一步,在Node中创建一个新的TCP服务器

//加载net模块
var net = require("net")
//调用net.createServer()方法创建一个新的TCP服务器
var chatServer = net.createServer()
//用on方法添加事件监听,当有新的客户端通过网络连接到服务器,就会触发connection事件,进而调用函数
chatServer.on("connection",function(client){
    client.write("Hello!\n");
    client.write("World!\n");
    client.end()
})
//调用listen,让Node知道监听8080端口
chatServer.listen(8080)




第二步,用Putty连接Node TCP服务器


(对于windows来说,Putty可以作为Telnet客户端,并且是免费的)


1、下载putty双击压缩文件,直接运行exe


2、进行连接配置
输入要连接的ip地址,下面可以保存临时的Ip地址,懒人福利~~选择对应保存过的ip地址,然后点击load,会加到上面,然后点击open,进入到下一步。


3、错误处理
窗口上面显示的IP即为连接的IP地址,错误弹框表明服务器关闭了网络连接


解决方法:
      (1)查看服务器防火墙,可将其关闭
      (2)查看sshd_config配置信息,将字段UseDNS的值设为no
      (3)查看/etc/hosts.deny文件中的内容,清除掉其中的限制IP(远程连接的客户端IP可能就被限制在其中)
      (4)若安装了DenyHosts之类的防火墙软件,可暂时将其关闭
经以上方法修改设置后,PUTTY便可正常连接服务器
4、连接成功 :输入用户名和密码即可。



第三步,进行通信
可以有几种方式:从putty发送数据到服务器,也可以在不同的客户端之间通信。
需要说明的是,从putty发送数据之后,node会吐出
<Buffer 48 59 6c ...> //中间部分省略
一堆代码,其实这是数据对应打印出来的十六进制格式,因为js无法很好的处理二进制数据,所以Node提供了一个Buffer库来帮助服务器,需要可以用toString()方法解析成字符串,也可以不变,因为两端都可以对二进制进行处理。
以上就实现了最基本的通信,不过这并不完善,有很多可以改进和扩展的地方,欢迎大牛们来踩。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【优质项目推荐】 1、项目代码均经过严格本地测试,运行OK,确保功能稳定后才上传平台。可放心下载并立即投入使用,若遇到任何使用问题,随时欢迎私信反馈与沟通,博主会第一时间回复。 2、项目适用于计算机相关专业(如计科、信息安全、数据科学、人工智能、通信、物联网、自动化、电子信息等)的在校学生、专业教师,或企业员工,小白入门等都适用。 3、该项目不仅具有很高的学习借鉴价值,对于初学者来说,也是入门进阶的绝佳选择;当然也可以直接用于 毕设、课设、期末大作业或项目初期立项演示等。 3、开放创新:如果您有一定基础,且热爱探索钻研,可以在此代码基础上二次开发,进行修改、扩展,创造出属于自己的独特应用。 欢迎下载使用优质资源!欢迎借鉴使用,并欢迎学习交流,共同探索编程的无穷魅力! 基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip 基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip 基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值