rust实现UDP服务器

use std::net::UdpSocket;

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

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

// 创建UDP套接字

let socket = UdpSocket::bind("127.0.0.1:8080")?;

// 初始化缓冲区

let mut buffer = [0; 1024];

loop {

// 等待数据包

let (number_of_bytes, sender_address) = socket.recv_from(&mut buffer)?;

// 解析数据包

let data = &buffer[..number_of_bytes];

// 处理数据(这里简单地将接收到的数据发送回客户端)

let response = b"Hello, UDP client!";

socket.send_to(&response, &sender_address)?;

// 打印接收到的数据

println!("Received message: {}", String::from_utf8_lossy(data));

}

}

相关推荐
zzzyyy53821 分钟前
Linux环境变量
linux·运维·服务器
kebeiovo1 小时前
atomic原子操作实现无锁队列
服务器·c++
CHHC18802 小时前
NetCore树莓派桌面应用程序
linux·运维·服务器
帮我吧智能服务平台3 小时前
装备制造智能制造升级:远程运维与智能服务如何保障产线OEE
运维·服务器·制造
Tingjct4 小时前
Linux常用指令
linux·运维·服务器
数据知道4 小时前
claw-code 源码分析:从 TypeScript 心智到 Python/Rust——跨栈移植时类型、边界与错误模型怎么对齐?
python·ai·rust·typescript·claude code·claw code
daad7774 小时前
wifi_note
运维·服务器·数据库
IT界的老黄牛4 小时前
Linux 压缩命令实战:tar、gzip、bzip2、xz、zstd 怎么选?一篇讲清楚
linux·运维·服务器
IT WorryFree5 小时前
飞塔防火墙与第三方设备进行IPSEC故障诊断期间,用户可能会观察到以下错误:
linux·服务器·网络
✎ ﹏梦醒͜ღ҉繁华落℘5 小时前
Makefile -GNU和MakeFile关系(二)
服务器·gnu