利用Web Socket技术实现client端与server端的连接(以Node.js作为服务器端)

简介:

几乎搞了一个工作日的时间,查找了很多的资料,学习,调试,最终终于把利用web socket方法,在node.js作为服务器的情况下,实现了client端与server端的交互,没办法,学习的过程就是这样,经历过痛苦之后,才能永生~~

虽然web socket这项技术早已经出来了,国外大概在10年就有人去研究,国内的我看最早的大概是在11年(也许有更早的,我没有看到相关资料罢了),而我呢,确是在这几天因为工作的原因,才知道这么个东西,才准备去学习一下。(要知道我学习java script才几天的时间,就在我写这篇文章的时候我还在学习什么是json,oh, my god! 好吧,我之前是搞C++的)。

其实我不太想让大家经历一遍我的痛苦,所以我直接把大家可能遇到最原始的问题发出来。

如果你安装好了node.js之后,并且按照网上大多数的讲web socket技术的资料上写的那样,用js 将服务器端和客户端都写好之后(这两个我相信大家都应该比我更容易掌握,毕竟我才刚接触js),实际上你就可以在命令行中直接运行node xxx.js程序就Ok 了,然后你用你的客户端去连接这个服务器地址,如果出现:TypeError: Object #<WriteStream> has no method 'flush', 直译就是找不到flush 方法。大家发现process.stdou.flush();不难发现这是一条类似于打印语句的东西,所以//掉它,结果发现问题更让人迷惑,最重要的是从来没有成功连接过,所以也不知道成功之后是什么样子的。

这个问题的原因可能在于大家下的一个web socket第三方库,也许你下载的地址是:

https://github.com/remy/html5demos/tree/master/server/ 这个网址真是害人啊,从网上看帖子说的原因是这个库不适用于node.js xx版本之后,因为node.js不断更新,这个库已经不跟着更了,这个有点坑人啊!所以最新的第三方库大家可以下载这个网址上的:

https://github.com/Worlize/WebSocket-Node 一试便成,好东西。然后所有的事情就解决了,可以安心看看代码,然后在其基础上进行修改了。

大家下载解压之后,运行WebSocket-Node-master\test目录下的echo-server.js,然后用自己写的客户端直接连http://localhost:8080  就行了,这个8080是echo-server.js文件里定义的。然后就能连上了,真是让人兴奋啊!

希望大家研究过web socket的人能一起多多交流,还有很多要和大家学习。










本文转自 我不会抽烟 51CTO博客,原文链接:http://blog.51cto.com/zhouhongyu1989/1290088,如需转载请自行联系原作者

目录
相关文章
|
1月前
|
Java 关系型数据库 API
探索后端技术:构建高效、可靠的服务器端应用
在当今数字化时代,后端技术是任何成功应用程序的基石。它涉及服务器、数据库和应用程序之间的交互,处理数据存储、业务逻辑和系统性能等关键任务。本文将深入探讨后端开发的核心概念、常见技术栈及其实际应用,帮助读者更好地理解和掌握构建高效、可靠后端系统的技巧与策略。
|
1月前
|
监控 中间件 Java
后端技术:构建高效、稳定的服务器端应用
【10月更文挑战第5天】后端技术:构建高效、稳定的服务器端应用
79 0
|
1月前
|
监控 关系型数据库 Serverless
探索后端技术:构建高效、可靠的服务器端应用
本文将深入探讨后端开发的核心概念和关键技术,从服务器架构到数据库管理,再到安全防护,为读者提供全面的后端技术指南。无论是初学者还是经验丰富的开发者,都能从中汲取灵感,提升自己的技术水平。
|
1月前
|
存储 监控 网络协议
服务器压力测试是一种评估系统在极端条件下的表现和稳定性的技术
【10月更文挑战第11天】服务器压力测试是一种评估系统在极端条件下的表现和稳定性的技术
112 32
|
1月前
|
网络协议 Ubuntu Linux
gpg从公钥服务器接收失败(gpg: keyserver receive failed: Server indicated a failure)
通过上述步骤,大多数情况下应该能够解决GPG从公钥服务器接收失败的问题。如果问题依旧存在,可能需要进一步调查与公钥服务器相关的更深层次的技术问题,或者考虑在相关社区论坛寻求帮助。
194 1
|
1月前
|
网络协议 Windows
Windows Server 2019 DHCP服务器搭建
Windows Server 2019 DHCP服务器搭建
|
1月前
|
网络协议 定位技术 Windows
Windows Server 2019 DNS服务器搭建
Windows Server 2019 DNS服务器搭建
|
1月前
|
Java PHP
PHP作为广受青睐的服务器端脚本语言,在Web开发中占据重要地位。理解其垃圾回收机制有助于开发高效稳定的PHP应用。
【10月更文挑战第1天】PHP作为广受青睐的服务器端脚本语言,在Web开发中占据重要地位。其垃圾回收机制包括引用计数与循环垃圾回收,对提升应用性能和稳定性至关重要。本文通过具体案例分析,详细探讨PHP垃圾回收机制的工作原理,特别是如何解决循环引用问题。在PHP 8中,垃圾回收机制得到进一步优化,提高了效率和准确性。理解这些机制有助于开发高效稳定的PHP应用。
45 3
|
27天前
|
NoSQL PHP Redis
布谷语音app源码服务器环境配置及技术开发语言
布谷语音app源码服务器环境配置及技术语言研发。。
|
2月前
|
存储 关系型数据库 API
深入理解后端技术:构建高效、可扩展的服务器端应用
本文将探讨后端开发的核心概念和技术,包括服务器端编程、数据库管理、API设计和安全性等方面。通过深入浅出的方式,让读者了解如何构建高效、可扩展的后端系统。我们将从基本的后端框架开始,逐步深入到高级主题,如微服务架构和容器化部署。无论您是初学者还是有经验的开发人员,都能在本文中找到有价值的信息和实用的建议。

热门文章

最新文章

下一篇
无影云桌面