求真百科欢迎当事人提供第一手真实资料,洗刷冤屈,终结网路霸凌。

RustWeb开发查看源代码讨论查看历史

事实揭露 揭密真相
跳转至: 导航搜索

来自 孔夫子网 的图片

RustWeb开发》,[德] 巴斯蒂安·格鲁伯(Bastian Gruber) 著,赵永,邹松廷,卢贤泼 译,出版社: 清华大学出版社。

清华大学出版社成立于1980年6月,是教育部主管、清华大学主办的综合性大学出版社[1]。清华社现年出版图书、音像制品、电子出版物等近3000种,销售规模和综合实力以及在高等教育教材市场、科技图书市场、馆配图书市场占有率均名列前茅[2]

内容简介

主要内容

● 在异步环境中处理借用检查器

● 创建Web API并处理JSON

● 组建一个用于Rust异步开发的技术

● 优雅地处理错误

● 测试、追踪、记录和调试

● 在多个环境中部署Rust应用

目录

第Ⅰ部分 Rust介绍

第1章 为什么使用Rust 3

1.1 开箱即用:Rust提供的工具 4

1.2 Rust编译器 8

1.3 Rust用于Web服务 10

1.4 Rust应用程序的可维护性 15

1.5 本章小结 15

第2章 建立基础 17

2.1 遵循Rust规范 18

2.1.1 使用结构体对资源进行建模 19

2.1.2 理解Option 21

2.1.3 使用文档解决错误 22

2.1.4 在Rust中处理字符串 27

2.1.5 深入理解移动、借用和所有权 28

2.1.6 使用和实现trait 31

2.1.7 处理结果 39

2.2 创建Web服务器 40

2.2.1 同时处理多个请求 41

2.2.2 Rust的异步环境 42

2.2.3 Rust处理async/await 43

2.2.4 使用Rust Future类型 44

2.2.5 选择运行时 45

2.2.6 选择Web框架 46

2.3 本章小结 49

第Ⅱ部分 开始

第3章 创建第一个路由函数 53

3.1 认识Web框架:Warp 54

3.1.1 Warp包括哪些内容 54

3.1.2 Warp的过滤器系统 55

3.2 获取第一个JSON响应 56

3.2.1 与你的框架理念保持一致 57

3.2.2 处理正确的路由 58

3.2.3 使用Serde库 59

3.2.4 优雅地处理错误 61

3.3 处理CORS头信息 65

3.3.1 在应用层面返回CORS头信息 66

3.3.2 测试CORS响应 67

3.4 本章小结 70

第4章 实现具象状态传输API 73

4.1 从内存中获取问题 74

4.1.1 设置一个模拟数据库 75

4.1.2 准备一组测试数据 78

4.1.3 从模拟数据库中读取 80

4.1.4 解析查询参数 84

4.1.5 返回自定义错误 88

4.2 创建、更新和删除问题 92

4.2.1 在线程安全的情况下更新数据 92

4.2.2 添加一个问题 96

4.2.3 更新问题 98

4.2.4 处理错误的请求 100

4.2.5 从存储中删除问题 101

4.3 通过url表单创建问题 103

4.3.1 url表单和JSON的区别 104

4.3.2 通过url表单添加答案 104

4.4 本章小结 107

第5章 清理代码库 109

5.1 将代码模块化 109

5.1.1 使用Rust的内置模块系统 110

5.1.2 针对不同用例的文件夹结构 116

5.1.3 创建库和sub-crate 120

5.2 为代码创建文件 124

5.2.1 使用文档注释和私有注释 124

5.2.2 在注释中添加代码 126

5.3 检测和格式化代码库 128

5.3.1 安装和使用Clippy 128

5.3.2 使用Rustfmt格式化代码 131

5.4 本章小结 132

第6章 记录、追踪和调试 133

6.1 在Rust应用中记录日志 134

6.1.1 在Web服务中实现日志记录 136

6.1.2 记录HTTP请求日志 142

6.1.3 创建结构化的日志 145

6.2 异步应用中的追踪 152

6.2.1 引入Tracing crate 153

6.2.2 集成Tracing到应用 154

6.3 调试Rust应用 158

6.3.1 在命令行上使用GDB 159

6.3.2 使用LLDB调试Web服务 160

6.3.3 使用Visual Studio和LLDB 162

6.4 本章小结 165

第7章 为应用添加数据库 167

7.1 设置示例数据库 168

7.2 创建第一个表 168

7.3 使用数据库crate 171

7.4 重新实现路由函数 177

7.5 处理错误和追踪数据库交互 192

7.6 集成SQL迁移 198

7.7 案例研究:切换数据库管理系统 201

7.8 本章小结 204

第8章 集成第三方API 205

8.1 准备代码库 207

8.2 将JSON响应反序列化为结构体 219

8.3 向API发送问题和答案 226

8.4 处理超时和同时发生的多个请求 231

8.5 本章小结 238

第Ⅲ部分 投入生产

第9章 添加认证和授权 241

9.1 为Web服务添加认证 243

9.2 添加授权中间件 265

9.3 未涵盖的内容 275

9.4 本章小结 276

第10章 部署应用程序 277

10.1 通过环境变量设置应用程序 277

10.2 根据不同环境编译Web服务 288

10.3 在构建流程中使用build.rs 291

10.4 创建正确的Web服务Docker镜像 294

10.5 本章小结 303

第11章 测试Rust应用程序 305

11.1 业务逻辑的单元测试 306

11.2 测试Warp过滤器 321

11.3 创建集成测试配置 325

11.4 本章小结 339

附录 关于安全的思考 341

参考文献

  1. 我国出版社的等级划分和分类标准,知网出书,2021-03-01
  2. 企业简介,清华大学出版社有限公司