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.