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

}

相关推荐
中云DDoS CC防护蔡蔡19 分钟前
自己的服务器被 DDOS跟CC攻击了怎么处理,如何抵御攻击?
运维·服务器·经验分享·网络安全·ddos
chian-ocean37 分钟前
永不休眠:Linux 守护进程的工作原理
linux·运维·服务器
00后程序员张1 小时前
实战解析:如何用克魔(KeyMob)等工具构建iOS应用稳定性与数据可观测体系
websocket·网络协议·tcp/ip·http·网络安全·https·udp
GalaxyPokemon2 小时前
LeetCode - 76. 最小覆盖子串
运维·服务器·数据结构·算法·leetcode
楽码2 小时前
安装和编写grpc协议文件
服务器·后端·grpc
qq_290606272 小时前
监听本地tcp,udp端口,通过socks5转发至远端
网络协议·tcp/ip·udp
q567315232 小时前
Linux搭建爬虫ip与私有IP池教程
linux·爬虫·tcp/ip
wanhengidc3 小时前
造成服务器宕机的原因都有哪些?
运维·服务器·网络
西北大程序猿3 小时前
服务器代码知识点补充
服务器·开发语言·网络·c++·网络协议
打不了嗝 ᥬ᭄4 小时前
进程控制
linux·运维·服务器·c++