入门
让我们编写第一个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 /查看结果。
如果需要,您可以在开发期间使用自动重新加载服务器,按需重新编译。 要了解如何实现这一点,请查看自动重载模式。