新手入门
让我们来创建第一个Rocket应用并运行它。首先确认我们安装了适当的Rust版本,然后创建一个依赖 Rocket的新Cargo工程,最后运行它。
安装Rust
Rocket 使用了大量的Rust的语法扩展和其它开发版的先进特性。因此我们需要使用nightly版的Rust。如果你已经安装了最新的nigthly版的Rust,请愉快地跳到下一节。
安装nightly版的Rust, 我们推荐使用rustup
。 安装rustup
请按照它官网的介绍。rustup
安装成功之后,请按照下面的命令将nightly版的Rust设置为你默认的工具链。
rustup default nightly
我们将在下一节设置一个工程目录,如果你愿意的话,你可以使用下面的命令,为你的Rocket项目单独设置nightly版:
rustup override set nightly
nightly 版本
Rocket 总是要求使用最新版本nightly版Rust。如果你的Rocket 应用忽然不能编译了。 请确认你使用的是否是最新的nightly版Rust。如果不是使用下面的命令升级:
rustup update && cargo update
Hello, world!
我们来开始第一个Rocket应用! 先创建一个可运行的Cargo项目并且进去这个新目录:
cargo new hello-rocket --bin
cd hello-rocket
现在, 把Rocket 和它的代码生成功能添加到你的工程依赖里面。 在项目里的Cargo.toml里加入以下代码:
[dependencies]
rocket = "0.3.6"
rocket_codegen = "0.3.6"
修改 src/main.rs,把以下代码粘贴进去,就成为了我们Rocket 的Hello, world!程序:
#![feature(plugin)]
#![plugin(rocket_codegen)]
extern crate rocket;
#[get("/")]
fn index() -> &'static str {
"Hello, world!"
}
fn main() {
rocket::ignite().mount("/", routes![index]).launch();
}
我们会在以后的章节来详细说明这个程序本质上做了什么。简而言之,它创建了一个index路由,并挂在在根路径下,之后启动了程序。用cargo run
编译并运行程序。你会看到如下信息:
Configured for development.
=> address: localhost
=> port: 8000
=> log: normal
=> workers: [core count * 2]
=> secret key: generated
=> limits: forms = 32KiB
=> tls: disabled
Mounting '/':
=> GET /
Rocket has launched from http://localhost:8000
访问http://localhost:8000 就可以看到运行的程序了。
Rocket系列 >>