Back

Rust web 领域目前有几个使用较多的框架,如 actix-web, Rocket 等等。我在使用 jwt 时使用过 Rocket ,由于最初使用的是 0.5.0-rc.1 版本,连接数据库的时候走了一些弯路。因此记录这篇文章给后来的人一点借鉴。

实际上,文档还是最有效的学习工具。包括连接数据库时,有一些 github 上的使用 Rokcet v3 写的连接池。而在 Rokcet 0.5.0-rc.1 版本提供了相关工具,一行代码就可以使用连接池。具体使用还是要看文档的。

文档资料:

Rocket - Simple, Fast, Type-Safe Web Framework for Rust

Quickstart - Rocket Programming Guide

Hello,World!

PS D:\cms> cargo new teach_used
     Created binary (application) `teach_used` package
PS D:\cms> code .\teach_used\
powershell

首先添加依赖,先添加一个框架。

rocket = { version = "0.5.0-rc.1",features = ["json"]}
toml

在 src/main.rs 写入

然后运行 cargo run ,访问 http://127.0.0.1:8000 就可以看到 Hello, world! 了。

源代码
源代码

Postman 测试
Postman 测试

GET/POST/PUT/DELETE

创建 src\module.rs , 创建需要的结构体。需要注意,这里使用的是 rocket 提供的序列化和反序列化工具。

src\module.rs

接下来,创建一个 src\routes.rs 。把 请求统一放在 routes.rs 里。然后再 main.rs 里引用。实现基本的get,post,delect,put。下面是代码

src\routes.rs

更新 main.rs, 运行 cargo fmt 格式化代码。然后 cargo run 运行代码。

src\main.rs

测试

使用 Postman 测试,均可以正常运行。

Postman 导入:

teach.postman_collection.json

就可以测试了。

Rust Web Rokcet 系列 1 Hello,World!与 GET,POST,PUT,DELETE
https://www.ftls.xyz/posts/rust-rocket1/
Author 恐咖兵糖
Published at
Copyright CC BY-NC-SA 4.0