Rust Web Development:使用 Rust 构建 Web 应用程序
Rust Web Development:使用 Rust 构建 Web 应用程序
简介:
引言
《Rust Web Development》(作者:Bastian Gruber,2023 年出版,共 443 页)是一本关于使用 Rust 语言构建现代 Web 应用程序的实用指南。与许多入门书籍不同,本书直接将读者带入实际开发:从项目设置到部署就绪服务。作者强调安全性、性能和惯用代码,这对于那些已经熟悉 Rust 基础并希望将其应用于 Web 环境的读者来说尤其宝贵。
本书内容
本书围绕构建一个完整的 Web 应用程序——一个订阅管理服务的后端展开。读者将逐步经历所有阶段:
- 使用 Cargo 进行项目设置和依赖项选择;
- 使用 Actix-web(Rust 生态中最流行的 Web 框架之一);
- 设计 REST API、处理请求和响应;
- 通过 SQLx(PostgreSQL 的异步驱动程序)连接数据库;
- 实现身份验证和授权(JWT、会话);
- 错误处理和日志记录;
- 集成测试和单元测试;
- 应用程序部署(Docker、CI/CD)。
每章不仅包含理论,还包含可直接运行和修改的现成代码。
适合读者
本书面向已具备 Rust 基础知识(熟悉所有权、借用、trait)并希望转向 Web 开发的开发者。它也对来自其他语言(Python、Go、Java)并希望了解 Rust 如何解决典型后端任务的开发者有帮助。对于 Rust 新手来说可能会有些困难——作者不解释语言基础,而是直接使用高级结构。
读者将学到什么
- 如何组织 Rust Web 项目的结构(模块、配置、依赖项);
- 如何使用 Actix-web 创建支持异步的 REST API;
- 如何通过 SQLx 使用数据库(迁移、查询、连接池);
- 如何实现安全的身份验证和会话管理;
- 如何为 Web 应用程序编写集成测试;
- 如何准备应用程序进行部署(Docker、CI/CD、环境变量);
- 如何以生产级风格处理错误和记录请求日志。
优势亮点
1. 实践导向。 整本书就是一个大型项目,随着章节推进而逐渐复杂。您不仅仅是阅读理论,而是编写可运行的代码。
2. 时效性。 本书于 2023 年出版,使用了 Actix-web 4、SQLx 0.7、Rust 2021 edition 的最新版本。所有示例均经过验证且可运行。
3. 聚焦安全性。 作者非常关注 Rust 的类型安全、错误处理、防止 SQL 注入(通过 SQLx)以及正确处理异步操作。
4. 测试。 专门有一章介绍集成测试——这在 Web 开发书籍中很少见。您将学习如何测试 API、数据库和中间件。
5. 部署。 在本书结尾,您将获得一个可立即运行的 Docker 镜像,并了解如何为 Rust 项目配置 CI/CD。
推荐人群
本书对以下人群有用:
- 希望掌握 Web 技术栈的 Rust 开发者;
- 从其他语言转向 Rust 的后端工程师;
- 学习现代 Web 开发方法的学生和教师;
- 所有希望看到 Rust 在实际项目中应用的人。
如果您正在寻找一本不仅能讲解语法,还能教会您使用 Rust 创建生产级 Web 应用程序的书——Bastian Gruber 的《Rust Web Development》将是一个绝佳选择。