Rust - Wrap 入门

文章目录

    • [关于 Wrap](#关于 Wrap)
      • [Warp & Rocket](#Warp & Rocket)
      • [Warp 结合使用的第三方库推荐](#Warp 结合使用的第三方库推荐)
    • 使用

关于 Wrap

A super-easy, composable, web server framework for warp speeds.

类似于 Python flask 的web 服务框架


视频教程 : 原子之音 https://www.bilibili.com/video/BV1a34y187XR/


Warp & Rocket

Warp

  • 性能更好
  • 官网就是GitHub
  • 像flask 微框架
  • 可以搭配不同的第三方库

Rocket

  • 性能相比Warp要差一点(性能也比较强大)
  • 易学、文档完善
  • 像django有一套成熟的解决方案
  • 不太需要第三方库

Warp 结合使用的第三方库推荐

  • log libs
    • log
    • pretty_env_logger
  • db libs
    • sqlx(异步)
  • json
    • serde
    • serde_json
    • serde_derive

使用

1、创建项目

shell 复制代码
cargo new basic_wrap

2、Cargo.toml 添加:

rust 复制代码
tokio = { version = "1", features = ["full"] }
warp = "0.3"

3、main.rs 代码修改为:

rust 复制代码
use warp::Filter;

#[tokio::main]
async fn main() {
    // GET /hello/warp => 200 OK with body "Hello, warp!"
    let hello = warp::path!("hello" / String)
        .map(|name| format!("Hello, {}!", name));

    warp::serve(hello)
        .run(([127, 0, 0, 1], 3030))
        .await;
}

4、运行

rust 复制代码
cargo update
cargo run

5、访问: http://127.0.0.1:3030/hello/rust

页面会显示

rust 复制代码
Hello, rust!

伊织 2024-05-09(四)

相关推荐
ch.ju9 小时前
Java程序设计(第3版)第四章——编译中的错误:无法覆盖
java·开发语言
阿正的梦工坊10 小时前
【Rust】15-Rust 内存布局、Drop 顺序与 unsafe 边界
开发语言·rust
我认不到你10 小时前
【开源、教程】RAG全流程实现(java+完整代码):第二弹
java·开发语言·人工智能·深度学习·ai·语言模型·开源
Tenaryo10 小时前
从 178ms 到 1ms:当 Store-to-Load Forwarding 卡住你的 for 循环
后端·面试
卷无止境10 小时前
PM4Py 入门教程:用 Python 做流程挖掘
后端
AKA__Zas10 小时前
初识多线程plus(2.0)
java·开发语言·学习方法
Rabitebla10 小时前
C++ 多态详解:从概念到虚表底层原理(代码轰炸)
开发语言·c++
Asize10 小时前
重生之我在 Vibe Coding 时代当程序员:第十五课,正则表达式和 HTTP 请求:规则不是背出来的,是拆出来的
前端·javascript·后端
惜缘破军10 小时前
基于 Spring Boot 3 和 Spring Cloud 2023 的微服务基础框架 hdfk7-boot
spring boot·后端·微服务
Asize10 小时前
重生之我在 Vibe Coding 时代当程序员:第十六课,从模拟队列到原型链
前端·javascript·后端