Handle CORS
This commit is contained in:
parent
603b57b303
commit
e7cbe25602
37
Cargo.lock
generated
37
Cargo.lock
generated
@ -1783,6 +1783,7 @@ version = "0.1.0"
|
||||
dependencies = [
|
||||
"futures",
|
||||
"rocket",
|
||||
"rocket_cors",
|
||||
"sea-orm",
|
||||
"serde",
|
||||
]
|
||||
@ -1804,6 +1805,23 @@ dependencies = [
|
||||
"version_check",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rocket_cors"
|
||||
version = "0.6.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "cfac3a1df83f8d4fc96aa41dba3b86c786417b7fc0f52ec76295df2ba781aa69"
|
||||
dependencies = [
|
||||
"http",
|
||||
"log",
|
||||
"regex",
|
||||
"rocket",
|
||||
"serde",
|
||||
"serde_derive",
|
||||
"unicase",
|
||||
"unicase_serde",
|
||||
"url",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rocket_http"
|
||||
version = "0.5.0"
|
||||
@ -2782,6 +2800,25 @@ dependencies = [
|
||||
"version_check",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "unicase"
|
||||
version = "2.7.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89"
|
||||
dependencies = [
|
||||
"version_check",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "unicase_serde"
|
||||
version = "0.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "6ef53697679d874d69f3160af80bc28de12730a985d57bdf2b47456ccb8b11f1"
|
||||
dependencies = [
|
||||
"serde",
|
||||
"unicase",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "unicode-bidi"
|
||||
version = "0.3.14"
|
||||
|
||||
@ -9,4 +9,5 @@ edition = "2021"
|
||||
rocket = {version = "0.5.0", features = ["json"] }
|
||||
serde = { version = "1.0", features = ["derive"] }
|
||||
sea-orm = { version = "^0.12.0", features = [ "sqlx-sqlite", "runtime-tokio-native-tls", "macros", "mock" ] }
|
||||
futures = "0.3.28"
|
||||
futures = "0.3.28"
|
||||
rocket_cors = "0.6.0"
|
||||
15
src/main.rs
15
src/main.rs
@ -1,12 +1,21 @@
|
||||
// Webserver
|
||||
#[macro_use] extern crate rocket;
|
||||
mod database;
|
||||
|
||||
// Import the data models
|
||||
pub mod models;
|
||||
|
||||
// Import the database setup
|
||||
mod database;
|
||||
use database::set_up_db;
|
||||
|
||||
// Import the member functions
|
||||
mod webserver_member;
|
||||
use webserver_member::*;
|
||||
|
||||
// Handle CORS
|
||||
use rocket_cors::{AllowedOrigins, CorsOptions};
|
||||
|
||||
// Serve the very exiting main page
|
||||
#[get("/")]
|
||||
fn index() -> &'static str {
|
||||
"Hello, world!\nNothing useful is served here."
|
||||
@ -19,8 +28,12 @@ async fn rocket() -> _ {
|
||||
Err(err) => panic!("{}", err)
|
||||
};
|
||||
|
||||
let cors = CorsOptions::default().allowed_origins(AllowedOrigins::all())
|
||||
.to_cors().unwrap();
|
||||
|
||||
rocket::build()
|
||||
.manage(db)
|
||||
.attach(cors)
|
||||
.mount("/", routes![
|
||||
index,
|
||||
get_member_by_id,
|
||||
|
||||
Loading…
Reference in New Issue
Block a user