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

相关推荐
行百里er20 小时前
BeanPostProcessor:包装 Feign Client
spring boot·后端·监控
花生了什么事o20 小时前
自定义Spring Boot Starter全流程
java·spring boot·后端
似水এ᭄往昔20 小时前
【Qt】--常用控件(显示类控件)
开发语言·qt
PHP实战开发录20 小时前
PHP文件上传成功为什么页面却找不到
开发语言·nginx·php·开发
云上小朱21 小时前
开发测试环境-Kubernetes离线部署指南
后端
遨翔在知识的海洋里21 小时前
nestjs(1)-模块的相互调用
后端
Profile排查笔记21 小时前
指纹浏览器推荐:用一套验收清单筛选 Profile、代理与自动化能力
前端·人工智能·后端·自动化
jsl_jsl_jsl21 小时前
JUC速记
后端
站大爷IP21 小时前
Python的pip依赖把我折腾惨了,原来requirements.txt和poetry能打出火星撞地球
后端
狗哥哥21 小时前
用“十步学习法”带你学会事件驱动架构
后端