add cors
This commit is contained in:
25
backend/Cargo.lock
generated
25
backend/Cargo.lock
generated
@@ -129,6 +129,12 @@ version = "1.3.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
|
||||
|
||||
[[package]]
|
||||
name = "bitflags"
|
||||
version = "2.6.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de"
|
||||
|
||||
[[package]]
|
||||
name = "bytemuck"
|
||||
version = "1.14.0"
|
||||
@@ -634,7 +640,7 @@ version = "0.16.8"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3c3287920cb847dee3de33d301c463fba14dda99db24214ddf93f83d3021f4c6"
|
||||
dependencies = [
|
||||
"bitflags",
|
||||
"bitflags 1.3.2",
|
||||
"crc32fast",
|
||||
"deflate",
|
||||
"miniz_oxide 0.3.7",
|
||||
@@ -681,6 +687,7 @@ dependencies = [
|
||||
"maud",
|
||||
"qrcode",
|
||||
"tokio",
|
||||
"tower-http",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -898,6 +905,22 @@ dependencies = [
|
||||
"tracing",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tower-http"
|
||||
version = "0.5.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5"
|
||||
dependencies = [
|
||||
"bitflags 2.6.0",
|
||||
"bytes",
|
||||
"http",
|
||||
"http-body",
|
||||
"http-body-util",
|
||||
"pin-project-lite",
|
||||
"tower-layer",
|
||||
"tower-service",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tower-layer"
|
||||
version = "0.3.2"
|
||||
|
||||
@@ -10,3 +10,4 @@ tokio = { version = "1.33.0", features = ["macros", "rt-multi-thread"] }
|
||||
qrcode = "0.12.0"
|
||||
image = "0.23.14"
|
||||
maud = { version = "0.26.0", features = ["axum"] }
|
||||
tower-http = { version = "0.5.2", features = ["cors"] }
|
||||
|
||||
@@ -3,19 +3,28 @@ use std::collections::HashMap;
|
||||
use axum::{
|
||||
debug_handler,
|
||||
extract::Query,
|
||||
http::{header::CONTENT_TYPE, StatusCode},
|
||||
http::{header::CONTENT_TYPE, HeaderValue, Method, StatusCode},
|
||||
response::IntoResponse,
|
||||
routing::get,
|
||||
Router,
|
||||
};
|
||||
use image::{png::PngEncoder, ColorType, Luma};
|
||||
use maud::{html, Markup};
|
||||
use tower_http::cors::CorsLayer;
|
||||
|
||||
#[tokio::main]
|
||||
async fn main() {
|
||||
let app = Router::new()
|
||||
.route("/", get(index))
|
||||
.route("/qr", get(get_qr_code));
|
||||
.route("/qr", get(get_qr_code))
|
||||
.layer(
|
||||
CorsLayer::new()
|
||||
.allow_origin("http://localhost:3000".parse::<HeaderValue>().unwrap())
|
||||
.allow_origin("http://localhost".parse::<HeaderValue>().unwrap())
|
||||
.allow_origin("http://localhost:5173".parse::<HeaderValue>().unwrap())
|
||||
.allow_origin("http://localhost:1337".parse::<HeaderValue>().unwrap())
|
||||
.allow_methods([Method::GET]),
|
||||
);
|
||||
|
||||
let listener = tokio::net::TcpListener::bind("0.0.0.0:3000").await.unwrap();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user