基于Rust语言的Rocket框架和Sqlx库开发WebAPI项目记录(一)

前置说明

**开发语言:**Rust

**Web框架:**Rocket

**数据库:**PostgreSQL

开发步骤

新建项目:

cargo new projectname

在Cargo.toml文件里配置如下依赖:

dependencies

rocket = {version="0.5.0",features="json"}

jsonwebtoken="9.2.0"

chrono = { version = "0.4", features = "serde" }

uuid = { version = "0.8", features = "serde", "v4" }

reqwest = { version = "0.11", features = "json" }

anyhow = "1.0.91"

dependencies.sqlx

version = "0.7"

default-features = false

features = "macros", "migrate"

dependencies.rocket_db_pools

version = "0.1.0"

features = "sqlx_postgres"

Rocket框架的配置文件(Rocket.toml)设置如下:

global

address="0.0.0.0"

port=9999

log_level="debug"

default.databases.afpdb

url = "postgresql://postgres:123@127.0.0.1:5432/prodb"

项目目录结构:

project

|---src

|---common //公共模块

|---db.rs //构造数据库连接池

|---jwt.rs //处理token

|---mistake.rs //处理错误

|---util.rs //工具函数

|---mod.rs //导出模块

|---params //封装参数结构体模块

|---req.rs //封装请求参数结构体

|---resp.rs //封装返回数据结构体

|---result_parse.rs //解析返回参数结构体

|---mod.rs //导出模块

|---logic //业务逻辑模块

|---wechat.rs //处理业务逻辑

|---mod.rs //导出模块

|---login_handle.rs //登录相关控制处理函数

|---xxx_handle.rs //控制处理函数

|---yyy_handle.rs //控制处理函数

|---lib.rs //统一导出库文件

|---main.rs //程序入口

|---target

|---Cargo.lock

|---Cargo.toml

|---Rocket.toml

相关推荐
落魄实习生15 分钟前
Agent Scope Java 2.x 系列【7】工具使用
java·开发语言·ai
茉莉玫瑰花茶1 小时前
GO [ 方法 ]
开发语言·后端·golang
Wx-bishekaifayuan1 小时前
django个性化旅游路线推荐平台49005-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
Eric_见嘉1 小时前
在职前端 Skill 和 MCP 分享
前端·后端·agent
狗凯之家源码网1 小时前
微博图床 PHP 系统搭建与实战应用指南
android·开发语言·php
孟健2 小时前
出海开发者资金合规:从港卡结汇到完税申报实操
后端·架构
乌暮3 小时前
深入理解 Java 泛型:把「万能盒子」用对、用稳
java·开发语言·后端·学习
架构技术专栏3 小时前
Skill 有效性与稳定性评估:用对照、重复与证据判断价值
后端
2601_962218613 小时前
C语言中三种库的编译和使用方法
开发语言·c++
传奇开心果编程3 小时前
中庸、有容、破执:仓颉编程语言的中华智慧结晶——三重哲学境界思辨
开发语言·华为·开源·软件工程