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

}

}

相关推荐
xflySnail1 小时前
nas服务域名高速访问-DNS+ESA
运维·服务器·esa·无端口访问
苏宸啊8 小时前
Linux指令篇(一)
linux·运维·服务器
ZStack开发者社区10 小时前
ZStack Cloud 5.5.0正式发布
运维·服务器·网络
半夏知半秋10 小时前
rust学习-闭包
开发语言·笔记·后端·学习·rust
源代码•宸11 小时前
Golang语法进阶(并发概述、Goroutine、Channel)
服务器·开发语言·后端·算法·golang·channel·goroutine
晴天¥11 小时前
VMware+Oracle linux LVM/非LVM磁盘扩容
linux·运维·服务器
醇氧11 小时前
Ping 127.0.0.1 具有 32 字节的数据:一般故障。【二】
运维·服务器·开发语言
墨风如雪12 小时前
VPS交易避坑指南:原油、改邮、PUSH与交易所模式深度解析 (含搬瓦工/DMIT/NetCup实战)
服务器
LeenixP12 小时前
RK3576-Debian12删除userdata分区
linux·运维·服务器·数据库·debian·开发板
qq_ceiling12 小时前
H3C交换机配置M-LAG
运维·服务器·网络