rustream/squire/
middleware.rs1use actix_cors::Cors;
2use actix_web::http::header;
3
4pub fn get_cors(websites: Vec<String>) -> Cors {
14 let mut origins = vec!["http://localhost.com".to_string(), "https://localhost.com".to_string()];
15 if !websites.is_empty() {
16 origins.extend_from_slice(&websites);
17 }
18 let cloned = origins.clone().into_iter().map(|x| format!("{}/{}", x, "*"));
20 origins.extend(cloned);
21 let mut cors = Cors::default()
22 .allowed_methods(vec!["GET", "POST"])
23 .allowed_headers(vec![header::AUTHORIZATION, header::ACCEPT, header::CONTENT_TYPE])
24 .allowed_header("secure-flag")
25 .max_age(3600); for origin in origins {
27 cors = cors.allowed_origin(&origin);
28 }
29 cors
30}