当前位置:   article > 正文

rust actix-web_actix-web jwt auth

actix-web jwt auth

简介

Actix Web 是一款基于 Rust 语言开发的高性能 Web 框架。
它通过异步编程模型、强大的请求路由、中间件支持,为开发者提供了丰富的工具和选项,
是构建可伸缩、高并发的 Web 应用程序的理想选择。
由于 actix-web 较早发布,所以在众多rust web库中 是目前拥有最好生态环境和社区的框架
高性能、可扩展,它采用了基于actor模型的异步编程模型,利用 Rust 的 Futures 和 async/await 语法来实现高效的非阻塞I/O操作。
在性能方面表现非常出色,适用于高并发、低延迟的web场景。

上手案例

  • Cargo.toml
[dependencies]
actix-web = "4.4.0"

  • 1
  • 2
  • 3
  • main.rs
use actix_web::{App, get, HttpResponse, HttpServer, Responder, route, web};
​
// 通过宏标注指出请求路径和方法
#[get("/t1")]
async fn get_request() -> impl Responder {
   HttpResponse::Ok().body("ok")
}
​
// 把请求体提取成String
async fn post_request(body: String) -> impl Responder {
   println!("{}", body);
   HttpResponse::Ok().body("ok")
}
​
/// 测试链接:
/// post@/t1
/// get@/t1
#[actix_web::main]
async fn main() -> std::io::Result<()> {
    let addr  = "127.0.0.1";
    let port = 8080;

    let app = HttpServer::new(|| {
        App::new()
           // 在这里传入定义的服务
          .service(get_request)
           // 这里注意到,route接收三个参数:路径,请求方法和handler
          .route("/t1", web::post().to(post_request))
    })
    .bind((addr, port))?;

    println!(" \n\n 
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/人工智能uu/article/detail/889215
推荐阅读
相关标签