rust实现TCP服务器

以下是一个简单的Rust TCP服务器示例,它接受客户端连接,并将接收到的数据回显回客户端:

use std::io::{self, Read, Write};

use std::net::TcpListener;

fn main() -> io::Result<()> {

let listener = TcpListener::bind("127.0.0.1:8080")?;

println!("Listening on 127.0.0.1:8080");

for stream in listener.incoming() {

let stream = stream?;

handle_connection(stream)?;

}

Ok(())

}

fn handle_connection(mut stream: TcpStream) -> io::Result<()> {

let mut buffer = 0; 1024;

let bytes_read = stream.read(&mut buffer)?;

if bytes_read == 0 {

return Ok(());

}

println!("Received {} bytes: {:?}", bytes_read, &buffer..bytes_read);

// Echo the data back

stream.write_all(&buffer..bytes_read)?;

stream.flush()?;

Ok(())

}

相关推荐
阿成学长_Cain1 分钟前
Linux ipcs 命令超全详解:查看共享内存 / 消息队列 / 信号量,IPC 运维必备
linux·运维·服务器·网络·数据库
青瓦梦滋42 分钟前
协议定制/序列化-反序列化(Linux视角)
linux·服务器·网络·c++
2601_961593421 小时前
Rust 开发环境配置繁琐?RustRover 开箱即用搞定编码调试
开发语言·后端·macos·rust
冬奇Lab2 小时前
每日一个开源项目(第154篇):Warp - 从‘好看的终端‘到 Agentic 开发环境
人工智能·rust·llm
sibo_yzm2 小时前
ECE-583快速打通欧姆龙PLC与Modbus TCP客户端连接
tcp/ip·modbus tcp·工业通信·光伏·ethercat·工业网关·上海泗博
MDM.Plus7 小时前
苹果MDM技术演进:从远程控制到设备信任体系的构建
运维·服务器·安全·ios·mdm·手机店
写代码的学渣7 小时前
Linux systemd 开机启动日志逐行详细解析报告
linux·运维·服务器
NiceCloud喜云9 小时前
Anthropic 一周三连发:Cowork 多端、Fable 5 按需付费、J-space 论文的技术解读
java·服务器·网络·人工智能·ai
qeen8710 小时前
【Linux】指令补充与shell的简单介绍
linux·运维·服务器