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

}

相关推荐
我言秋日胜春朝★1 小时前
【Linux】基础IO-----软硬链接与动静态库
linux·运维·服务器
Koi慢热4 小时前
如何在CentOS 6上安装和配置Apache与PHP?
服务器·网络安全·centos·系统安全·apache
小羊小羊,遇事不难4 小时前
Error: near “112136084“: syntax
java·服务器·前端
hao_wujing4 小时前
GPU 进阶笔记(四):NVIDIA GH200 芯片、服务器及集群组网
运维·服务器·笔记
小松聊PHP进阶4 小时前
命令行命令纠错神器 The Fuck
linux·运维·服务器
2301_775602384 小时前
简易内存池
java·服务器·数据库
栀寒老醑5 小时前
ELK日志收集
linux·运维·服务器·nginx·elk·centos·graylog
william0820126 小时前
RapidSSL 证书
服务器·网络·网络安全·微信小程序·https·ssl
yz7176 小时前
计算机网络•自顶向下方法:IP编址
网络·tcp/ip·计算机网络
hao_wujing6 小时前
LLaMA 2开放基础和微调聊天模型
服务器·人工智能·llama