udp-stream
es una biblioteca de Rust que proporciona una API simple para manejar datos de transmisión a través del Protocolo de datagramas de usuario (UDP), similar a TcpStream. Resume las complejidades de trabajar con UDP, como el manejo de la fragmentación de paquetes, el reensamblaje y el control de flujo, lo que facilita a los desarrolladores enviar y recibir flujos continuos de datos a través de sockets UDP, especialmente cuando se utiliza el protocolo DTLS.
Basado en flujo : udp-stream
proporciona una capa de abstracción para manejar paquetes UDP como un flujo continuo de datos, utilizando una firma de función similar a TcpStream
en la biblioteca tokio
. Esto permite a los desarrolladores familiarizados con tokio
aprovechar sus conocimientos existentes para trabajar con UDP de manera similar.
Ligero : udp-stream
ocupa poco espacio y solo depende de las bibliotecas tokio
y bytes
, lo que lo hace liviano y fácil de integrar en sus proyectos existentes.
Para usar udp-stream
en su proyecto Rust, simplemente agréguelo como una dependencia en su archivo Cargo.toml
:
toml
udp-stream = "0.0.12"
Luego, puedes importar y usar la biblioteca en tu código Rust:
óxido
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();
}
}
Para obtener más detalles sobre cómo usar udp-stream
, incluidas las opciones de configuración, el uso de DTLS y el uso avanzado, consulte los ejemplos.
¡Las contribuciones a udp-stream
son bienvenidas! Si desea contribuir a la biblioteca, siga las pautas estándar de la comunidad de Rust para contribuir, incluida la apertura de problemas, el envío de solicitudes de extracción y la entrega de comentarios.
udp-stream
tiene la licencia MIT, que permite el uso, modificación y distribución gratuitos, sujeto a los términos y condiciones descritos en la licencia.
¡Esperamos que udp-stream
sea útil para tus proyectos! Si tiene alguna pregunta o necesita más ayuda, no dude en contactarnos o abrir un problema en el repositorio.