入门

让我们编写第一个actix Web应用程序!

Hello, world!

首先创建一个新的基于二进制的Cargo项目并切换到新目录:

cargo new hello-world
cd hello-world

现在,通过确保您的Cargo.toml包含以下内容,将actix-web添加为项目的依赖项:

[dependencies]
actix-web = "0.7"

为了实现Web服务器,我们首先需要创建一个请求处理程序。

请求处理程序是一个函数,它接受HttpRequest实例作为其唯一参数,并返回一个可以转换为HttpResponse的类型:

文件名:src / main.rs

extern crate actix_web;
use actix_web::{server, App, HttpRequest};

fn index(_req: &HttpRequest) -> &'static str {
    "Hello world!"
}

接下来,创建一个Application实例,并在特定的HTTP方法和路径上使用应用程序的资源注册请求处理程序,然后,应用程序实例可以与HttpServer一起用于侦听传入的连接。 服务器接受应该返回HttpHandler实例的函数。 为简单起见,可以使用server :: new,这个函数是HttpServer :: new的快捷方式:

fn main() {
    server::new(|| App::new().resource("/", |r| r.f(index)))
        .bind("127.0.0.1:8088")
        .unwrap()
        .run();
}

现在,使用cargo run 编译并运行程序。 前往http:// localhost:8088 /查看结果。

如果需要,您可以在开发期间使用自动重新加载服务器,按需重新编译。 要了解如何实现这一点,请查看自动重载模式。

10-07 10:27