Add middleware

This commit is contained in:
Tobias Reisinger 2021-11-06 14:54:45 +01:00
parent 483fd60daa
commit e6278176e4
6 changed files with 65 additions and 13 deletions

View file

@ -4,7 +4,9 @@ extern crate diesel;
extern crate diesel_migrations;
extern crate dotenv;
use actix_web::{App, HttpServer, web};
use actix_web::{middleware, web, App, HttpServer};
use actix_web::middleware::normalize::TrailingSlash;
use env_logger::{Builder, Env};
mod db;
mod handlers;
@ -14,8 +16,17 @@ mod types;
async fn main() -> std::io::Result<()> {
db::run_migrations();
Builder::from_env(Env::default().default_filter_or("info")).init();
HttpServer::new(|| {
App::new()
.wrap(middleware::DefaultHeaders::new()
.header("Access-Control-Allow-Origin", "*")
.header("Access-Control-Allow-Headers", "*")
.header("Access-Control-Allow-Methods", "*")
)
.wrap(middleware::Logger::default())
.wrap(middleware::NormalizePath::new(TrailingSlash::Trim))
.route(
"/api/v1/schedules",
web::get().to(handlers::v1::schedules::index),