68 releases (29 breaking)

new 0.67.2 May 7, 2024
0.66.2 Mar 6, 2024
0.63.1 Dec 21, 2023
0.59.0 Nov 30, 2023
0.37.6 Nov 29, 2022

#520 in HTTP server

Download history 562/week @ 2024-01-15 454/week @ 2024-01-22 505/week @ 2024-01-29 539/week @ 2024-02-05 893/week @ 2024-02-12 1081/week @ 2024-02-19 1241/week @ 2024-02-26 2152/week @ 2024-03-04 1165/week @ 2024-03-11 932/week @ 2024-03-18 903/week @ 2024-03-25 1056/week @ 2024-04-01 1065/week @ 2024-04-08 1088/week @ 2024-04-15 1078/week @ 2024-04-22 920/week @ 2024-04-29

4,278 downloads per month
Used in 2 crates (via salvo)

MIT/Apache

675KB
15K SLoC

salvo-cors

Library to Provide a CORS protection for Salvo.

This is offical crate, so you can enable it in Cargo.toml like this:

salvo = { version = "*", features=["cors"] }

Docs


lib.rs:

Cross-Origin Resource Sharing (CORS) support for Savlo web server framework.

Example

use salvo_core::http::Method;
use salvo_core::prelude::*;
use salvo_cors::Cors;

let cors_handler = Cors::new()
    .allow_origin("https://salvo.rs")
    .allow_methods(vec![Method::GET, Method::POST, Method::DELETE]).into_handler();

let router = Router::new().hoop(cors_handler).post(upload_file).options(upload_file);
#[handler]
async fn upload_file(res: &mut Response) {
}

If you want to allow any router:

use salvo_core::prelude::*;
use salvo_cors::{self as cors, Cors};
let cors_handler = Cors::new().allow_origin(cors::Any).into_handler();

Read more: https://salvo.rs

Dependencies

~18–32MB
~557K SLoC