关于NodeJs和JAVA建立socket连接方式

 更新时间:2023年06月01日 10:03:34   作者:倪风6  
这篇文章主要介绍了关于NodeJs和JAVA建立socket连接方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

起因

我现在有了需求,使用js作为服务器端,接收我springboot发送来的数据,进行处理,并且返回处理后的内容返回,这里就想到到了进行socket连接,以下我对我的思路进行了一个小demo 

过程

先不多说了,直接上代码

这里我先建立的是nodejs之间客户端与服务端的连接

nodejs server

const net = require('net');
const fs = require('fs')
const server = net.createServer(function (connection) {
    console.log('客户端连接成功');
    connection.on('end', function () {
        console.log('客户端关闭连接');
    });
    connection.on('data', function (data) {
        console.log(data.toString());
    });
    const content = fs.readFileSync('./111.txt') // 读取到文件,进行返回
    connection.write('服务器:'+content.toString());
    // connection.pipe(connection); // 用来返回收到的消息,也就是服务端在这里收到的消息原文,再返回给客户端
});
server.listen(3000, function () {
    console.log('服务器监听');
});

nodejs client

const net = require('net');
const client = net.connect({ port: 3000 }, function () {
    console.log('连接到服务器!');
});
client.on('data', function (data) {
    console.log(data.toString());
    client.write("我已收到数据")
    client.end();
});
client.on('end', function () {
    console.log('断开与服务器的连接');
});

这里我服务端是对本地文件进行了读取,读取到内容进行返回,客户端接收到消息,会回复一句,我已收到消息

当我们nodejs之间成功建立连接后,我们开始使用Java作为客户端向node服务端进行socket连接发送消息

java客户端

@Test
public void socket(){
    Socket socket = null;
    String Code_Adress = "127.0.0.1";
    try {
        socket = new Socket(Code_Adress,3000);
        OutputStream outputStream = socket.getOutputStream();
        InputStream inputStream = socket.getInputStream();
        byte[] bytes = new byte[1024];
        outputStream.write("我是JAVA客户端".getBytes());
        int len = inputStream.read(bytes);
        String str = new String(bytes,0,len);
        System.out.println(str);
        socket.close();
    } catch (IOException e) {
        e.printStackTrace();
    } 
}

效果图:

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 详解基于node的前端项目编译时内存溢出问题

    详解基于node的前端项目编译时内存溢出问题

    本篇文章主要介绍了基于node的前端项目编译时内存溢出问题,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • 在Ubuntu上安装最新版本的Node.js

    在Ubuntu上安装最新版本的Node.js

    Node.js是一个软件平台,通常用于构建大规模的服务器端应用。Node.js使用JavaScript作为其脚本语言,由于其非阻塞I/O设计以及单线程事件循环机制,使得它可以交付超高的性能。
    2014-07-07
  • 用nodeJS搭建本地文件服务器的几种方法小结

    用nodeJS搭建本地文件服务器的几种方法小结

    本篇文章主要介绍了用nodeJS搭建本地文件服务器的几种方法小结,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-03-03
  • 配置Node.js环境变量详细图文教程

    配置Node.js环境变量详细图文教程

    这篇文章主要给大家介绍了关于配置Node.js环境变量详细图文教程的相关资料,在Node.js中设置环境变量非常简单,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-11-11
  • Node.js中操作MongoDB的CRUD操作指南

    Node.js中操作MongoDB的CRUD操作指南

    在Node.js中操作MongoDB常见的库有mongodb原生驱动和mongoose等,本文将使用mongodb官方驱动包来进行示例,在开始之前,请确保已经安装了MongoDB数据库并且在本地启动了MongoDB服务,需要的朋友可以参考下
    2024-01-01
  • mongoose中利用populate处理嵌套的方法

    mongoose中利用populate处理嵌套的方法

    这篇文章主要给大家介绍了关于mongoose中利用populate处理嵌套的方法,文中通过示例代码介绍的非常详细,对大家具有一的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-05-05
  • 详解node如何让一个端口同时支持https与http

    详解node如何让一个端口同时支持https与http

    众所周知node是一个高性能的web服务器,使用它可以很简单的创建一个http或https的服务器。这篇文章主要介绍了详解node如何让一个端口同时支持https与http
    2017-07-07
  • 实例分析nodejs模块xml2js解析xml过程中遇到的坑

    实例分析nodejs模块xml2js解析xml过程中遇到的坑

    这篇文章主要介绍了实例分析nodejs模块xml2js解析xml过程中遇到的坑,涉及nodejs模块xml2js解析xml过程中parseString方法参数使用技巧,需要的朋友可以参考下
    2017-03-03
  • Node.js:模块查找,引用及缓存机制详解

    Node.js:模块查找,引用及缓存机制详解

    Node.js是一个基于Chrome V8引擎的JavaScript运行环境,它的模块查找、引用和缓存机制是其重要的特性之一。本文将介绍Node.js的模块查找、引用和缓存机制,以及如何利用这些机制来提高应用程序的性能和可维护性。
    2023-03-03
  • node.js微信公众平台开发教程

    node.js微信公众平台开发教程

    这篇文章主要为大家分享了node.js微信公众平台开发教程,如何进行微信开发,感兴趣的小伙伴们可以参考一下
    2016-03-03

最新评论