I would like enable Basic Authorization in Iron http server. I wrote code but is not working correctly. How enable Basic Authorization in Iron Http server? I am asking for an example.
let mut router = Router::new();
router.get("/json", get_json, "json");
fn get_json(_: &mut Request) -> IronResult<Response> {
let mut headers = Headers::new();
headers.set(
Authorization(
Basic {
username: "root".to_owned(),
password: Some("test".to_owned())
}
)
);
let payload = "{ \"json\" : \"test\" }".to_string();
let mut resp = Response::with((status::Ok, payload));
resp.headers = headers;
Ok(resp)
}
match Iron::new(router).http(SocketAddrV4::new(Ipv4Addr::new(0, 0, 0, 0), 3000)) {
Ok(_) => println!("Listening on {}", 3000),
Err(e) => println!("Error: {}", e),
};
I'm solved this problem.
Link : Github repo