序言:Rust语言简介
使用Rust进行HTTP Web后端应用开发
在Rust生态中进行HTTP Web后端应用开发目前主要依赖两个基础库:http 以及hyper,其中 http 提供HTTP标准相关的基础类型,如Request 、Response以及StatusCode和常用的Header等;hyper的定位是一个高效、准确的 HTTP底层库,它封装了HTTP的报文解析、报文编码处理、连接控制等内容,对于用户而言 只需要实现一个类似于Fn(Request) -> Response的映射,就可以完HTTP Web服务端的开 发。
基于http以及hyper,社区中还有很多用于Web应用开发的框架,常用的有:
值得一提的是上周刚发布的tower-web,因为这是官方net团队2018年工作计划的一部分, 这个库在未来会为Rust生态提供一个灵活、高效、易于使用的Web开发框架。那么事不宜迟, 我们通过实战演练来一睹为快。
在本月月底,tower-web将会集成到wrap项目中,成为wrap框架的一部分,开发的重心将会转移到wrap上。
实战演练
登录华为云,并创建弹性云服务器作为我们的后端应用 服务器
实战中使用的系统版本为Ubuntu 16.04,如果选择不同的系统需要根据情况调整命令。
安装相关的工具链
apt update && apt install build-essential
# 安装Rust工具链
curl https://sh.rustup.rs -sSf | sh
这一步结束后,我们就可以开始编写我们的应用服务了。
编写后端Web应用
这次分享我们来构建一个RESTful中文分词API,首先我们来创建一个Rust工程 cargo new --bin chinese_segmentation
接下来在Cargo.toml中添加相关依赖
[dependencies]
tower-web = "