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(四)

相关推荐
二进制coder6 分钟前
深入浅出:I²C多路复用器PCA9546详解 - 解决地址冲突,扩展你的I²C总线
c语言·开发语言·单片机
mit6.8247 分钟前
[lc-rs] swap|lev_dist源码
rust
往事随风去12 分钟前
那个让老板闭嘴、让性能翻倍的“黑科技”:基准测试最全指南
后端·测试
李广坤21 分钟前
JAVA线程池详解
后端
调试人生的显微镜28 分钟前
深入剖析 iOS 26 系统流畅度,多工具协同监控与性能优化实践
后端
蹦跑的蜗牛29 分钟前
Spring Boot使用Redis实现消息队列
spring boot·redis·后端
非凡ghost37 分钟前
HWiNFO(专业系统信息检测工具)
前端·javascript·后端
非凡ghost40 分钟前
FireAlpaca(免费数字绘图软件)
前端·javascript·后端
非凡ghost1 小时前
Sucrose Wallpaper Engine(动态壁纸管理工具)
前端·javascript·后端
间彧1 小时前
从零到一搭建Spring Cloud Alibbaba项目
后端