新手入门

让我们来创建第一个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系列 >>

文章来源于互联网:rust web框架rocket指南——新手入门

发表评论