Rust Rocket框架跨域设置

Rocket是一个用Rust写的MVC框架,简单易用

本篇文章介绍如何进行跨域,这里使用一个第三方库实现,rocket_cors

实现步骤:

  • Cargo.toml添加依赖

rocket_cors = "0.5.1"

  • 配置CORS,新建一个函数
use rocket::http::{Method};
use rocket_cors::{Cors, AllowedOrigins, AllowedHeaders};


pub fn get_cors() -> Cors {
	// 允许访问的域,这里允许全部,如果要指定其他可以
	// let allowed_origins = AllowedOrigins::some_exact(&["https://www.acme.com"]);
    let allowed_origins = AllowedOrigins::All;
    // You can also deserialize this
    rocket_cors::CorsOptions {
        allowed_origins,
        allowed_methods: vec![Method::Get, Method::Post, Method::Options].into_iter().map(From::from).collect(),
        // 指定header:AllowedHeaders::some(&["Authorization", "Accept"]),
        allowed_headers: AllowedHeaders::All,
        allow_credentials: true,
        ..Default::default()
    }.to_cors().expect("cors config error")
}
  • 启动方法添加attach
rocket::ignite()
        .mount("/", routes![xxx])
        // 跨域设置
        .attach(get_cors())
        .launch()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值