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(())

}

相关推荐
一个响当当的名号3 小时前
一些主要应用和NAT
运维·服务器·网络
Vallelonga4 小时前
Rust 中的数组和数组切片引用
开发语言·rust
Kiri霧4 小时前
Rust模式匹配详解
开发语言·windows·rust
筵陌5 小时前
深入理解 Reactor 反应堆模式:高性能网络编程的核心
服务器
OPTree4125 小时前
H3C网络设备 实验三: 搭建两个局域网,使两个局域网相互通信(路由器,自动分配ip,DHCP协议)
网络·tcp/ip·智能路由器
阿沁QWQ7 小时前
MySQL服务器配置与管理
服务器·数据库·mysql
wanhengidc7 小时前
云手机能够做些什么?
运维·服务器·人工智能·智能手机·云计算
2401_865854887 小时前
腾讯云手机适用于哪些人群
服务器
啊?啊?9 小时前
1 玩转Linux命令行:基础文件操作实战教程
linux·服务器·基础指令
一个不秃头的 程序员9 小时前
从 0 到上线、长期运行、后续更新的**全流程**(适配 CentOS 服务器)
linux·服务器·centos