9 releases
0.2.1 | Mar 15, 2023 |
---|---|
0.2.0 | Mar 15, 2023 |
0.1.6 | Mar 9, 2023 |
#1333 in HTTP server
7KB
121 lines
http_server_tiny
Tiny http server library using tiny http
Usage:
You need to provide a error.html file to use when server return 404 error.
Route Macro (Experimental)!!!
This macro is usefull for deploying static files.
Example
route!(get_html => server, "/", ".index.html");
This macro is equal to this
server.add_route(
&Method::Get,
"/",
Box::new(|_| Res::File {
name: "./index.html",
ct: "text/html; charset=utf-8",
sc: 200,
}),
);
src/main.rs
use http_server_tiny::{route, HttpServer, Method, Res};
fn main() -> Result<(), Box<dyn std::error::Error>> {
let mut server = HttpServer::new("0.0.0.0:8000", "./error.html");
route!(get_html => server, "/", ".index.html");
route!(get_js => server, "/index.js", ".index.js");
server.handle_requests(Box::new(|req| {
println!("INFO: {} {}", req.method, req.url);
}))
}
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Hello, World</title>
</head>
<body>
<h1>Hello, world!</h1>
</body>
<script src="index.js"></script>
</html>
index.js
console.log("Hello, world!");
error.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>404</title>
</head>
<body>
404
</body>
</html>
Dependencies
~380KB