Crate rsweb[][src]

Expand description

rsweb

library for interacting with the http protocol and creating a multithreaded web server

To create a simple server just use the following code:

 
use rsweb::ressource::RessourceLoader;
use rsweb::route::Router;
use rsweb::server::Server;

let mut server = Server::new(
    10, // number of threads
    RessourceLoader::new(10, ".".to_string()), // create a new ressource loader with capacity 10
    Router::new(String::from("/index.html")), // create a new router with index at index.html
    8080, // port
    std::net::IpAddr::V4(std::net::Ipv4Addr::new(127,0,0,1)), // ip (localhost in this case)
);

rsweb also supports ssl. To create a simple server that uses ssl use:

use rsweb::ressource::RessourceLoader;
use rsweb::route::Router;
use rsweb::ssl::SSLServer

let mut server = SSLServer::new(
    10, // number of threads
    RessourceLoader::new(10, ".".to_string()), // create a new ressource loader with capacity 10
    Router::new(String::from("/index.html")), // create a new router with index at index.html
    8080, // port
    std::net::IpAddr::V4(std::net::Ipv4Addr::new(127,0,0,1)), // ip (localhost in this case)
    String::from("key.pem"), // private key file
    String::from("certs.pem"), // certificate chain file
);

Re-exports

pub use tp::ThreadPool;

Modules