udp-stream
ist eine Rust-Bibliothek, die eine einfache API für die Verarbeitung von Streaming-Daten über das User Datagram Protocol (UDP) bereitstellt, ähnlich wie TcpStream. Es abstrahiert die Komplexität der Arbeit mit UDP, wie z. B. die Handhabung der Paketfragmentierung, der Neuzusammensetzung und der Flusskontrolle, und erleichtert Entwicklern das Senden und Empfangen kontinuierlicher Datenströme über UDP-Sockets, insbesondere bei Verwendung des DTLS-Protokolls.
Streambasiert : udp-stream
bietet eine Abstraktionsschicht für die Verarbeitung von UDP-Paketen als kontinuierlichen Datenstrom und verwendet eine ähnliche Funktionssignatur wie TcpStream
in der tokio
-Bibliothek. Dadurch können Entwickler, die mit tokio
vertraut sind, ihr vorhandenes Wissen nutzen, um auf ähnliche Weise mit UDP zu arbeiten.
Leichtgewichtig : udp-stream
hat einen geringen Platzbedarf und ist nur von den tokio
und bytes
-Bibliotheken abhängig, wodurch es leichtgewichtig ist und sich leicht in Ihre bestehenden Projekte integrieren lässt.
Um udp-stream
in Ihrem Rust-Projekt zu verwenden, fügen Sie es einfach als Abhängigkeit in Ihrer Cargo.toml
Datei hinzu:
toml
udp-stream = "0.0.12"
Anschließend können Sie die Bibliothek importieren und in Ihrem Rust-Code verwenden:
Rost
use std::{net::SocketAddr, str::FromStr};
use tokio::io::{AsyncReadExt, AsyncWriteExt};
use udp_stream::UdpStream;
#[tokio::main]
async fn main() -> Result<(), Box<dyn Error>> {
let mut stream = UdpStream::connect(SocketAddr::from_str("127.0.0.1:8080")?).await?;
println!("Ready to Connected to {}", &stream.peer_addr()?);
let mut buffer = String::new();
loop {
std::io::stdin().read_line(&mut buffer)?;
stream.write_all(buffer.as_bytes()).await?;
let mut buf = vec![0u8; 1024];
let n = stream.read(&mut buf).await?;
print!("-> {}", String::from_utf8_lossy(&buf[..n]));
buffer.clear();
}
}
Weitere Einzelheiten zur Verwendung udp-stream
, einschließlich Konfigurationsoptionen, Verwendung für DTLS und erweiterter Verwendung, finden Sie in den Beispielen.
Beiträge zu udp-stream
sind willkommen! Wenn Sie zur Bibliothek beitragen möchten, befolgen Sie bitte die Standardrichtlinien der Rust-Community für Beiträge, einschließlich der Eröffnung von Problemen, der Einreichung von Pull-Anfragen und der Bereitstellung von Feedback.
udp-stream
ist unter der MIT-Lizenz lizenziert, die die kostenlose Nutzung, Änderung und Verbreitung gemäß den in der Lizenz dargelegten Bedingungen ermöglicht.
Wir hoffen, dass udp-stream
für Ihre Projekte nützlich ist! Wenn Sie Fragen haben oder weitere Hilfe benötigen, zögern Sie bitte nicht, uns zu kontaktieren oder ein Problem im Repository zu eröffnen.