博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Net简单应用-服务器和客户端之间简单通信
阅读量:5876 次
发布时间:2019-06-19

本文共 1316 字,大约阅读时间需要 4 分钟。

hot3.png

Scoket编程

创建服务器

  • 创建sever.js
  • 引用net工具包
  • 使用net.createSever()创建一个TCP服务器,并使用net.listen()监听指定端口
var net = require('net');// 创建一个TCP服务器,function(connection){}是给connection事件创建的监听器,当有接收到请求的时候触发var server = net.createServer(function (connection) {    console.log('client connected');    // 当 socket 另一端发送 FIN 包时,触发该事件。    connection.on('end', function () {        console.log('客户端关闭链接');    });    // 写入数据,默认是uft8编码    connection.write('Hello World!\r\n');    // pipe()是管道流方法,把connection加到connection中    connection.pipe(connection);});// 监听8080端口,客户端端口需要与其一致server.listen('8080', function () {    console.log('server is listening');});

创建客户端

  • 新建 client.js
  • 引入net工具包
  • 使用net.connect()创建一个新的net.Socket对象并连接到指定端口(跟服务器端口一致)
  • 对data、end事件进行监听
var net = require('net');// 返回一个新的net.Socket,并链接到指定的端口,这里是8080,端口需要与服务器保持一致// 当socket建立的时候,将会触发‘connect’事件var client = net.connect(    {port: 8080},    function () {        console.log('链接到服务器');    });// data为net.Socket对象的事件,当接收到数据时触发client.on('data', function (data) {    console.log(data.toString());    // 半关闭 socket。例如,它发送一个 FIN 包。可能服务器仍在发送数据。    client.end();});// 当 socket 另一端发送 FIN 包时,触发该事件。client.on('end', function () {    console.log('断开与服务器的链接');});

运行: 打开两个窗口,先在其中一个端口启动服务器 node server.js

在另一个窗口运行客户端 node client.js

问题

怎么实现在这两个窗口进行聊天呢?

转载于:https://my.oschina.net/u/3094219/blog/806755

你可能感兴趣的文章
关于Spring 中的事务
查看>>
为什么现在都用面向对象开发,为什么现在都用分层开发结构?
查看>>
【离散数学】 SDUT OJ 偏序关系
查看>>
写给学弟学妹的产品入门建议(持续更新)
查看>>
view视图总结
查看>>
深入剖析tomcat之一个简单的web服务器
查看>>
记一次数据库查询语句的优化
查看>>
poj2365
查看>>
SQL学习笔记三select语句的各种形式
查看>>
Android cts all pass 全攻略
查看>>
数学 SCU 4436 Easy Math
查看>>
Django form组件
查看>>
1006 等差数列
查看>>
SelectMethod=cursor
查看>>
url路由配置及渲染方式
查看>>
MySQL修改root密码的各种方法整理
查看>>
Json/XML序列化和反序列化
查看>>
I.MX6 Android stlport 使用
查看>>
Python selenium chrome 环境配置
查看>>
java学习第二天
查看>>