Web开发

首页 » 常识 » 常识 » actixweb自包含HTTP服
TUhjnbcbe - 2021/2/26 4:37:00

HttpServer类型负责为HTTP请求提供服务。

HttpServer接受应用程序工厂作为参数,并且应用程序工厂必须具有Send+Sync约束。在“多线程”一节有更多信息。

要绑定到特定的套接字(socket)地址,必须使用bind()方法,并且可以多次调用它。

要绑定ssl套接字(socket),应使用bind_openssl()方法或者bind_rustls()方法。

要运行HTTP服务器,请使用HttpServer::run()方法。

useactix_web::{web,App,HttpResponse,HttpServer};#[actix_web::main]asyncfnmain()-std::io::Result(){HttpServer::new(

{App::new().route("/",web::get().to(

HttpResponse::Ok()))}).bind(".0.0.1:")?.run().await}

run()方法返回Server类型的实例,Server类型的方法可用于管理HTTP服务器:

pause()-暂停接受传入的连接

resume()-重新开始接受传入的连接

stop()-停止处理传入的连接,停止所有工作线程,并退出

下面的示例展示了如何在独立的线程中启动HTTP服务器。

useactix_web::{web,App,HttpResponse,HttpServer,rt::System};usestd::sync::mpsc;usestd::thread;#[actix_web::main]asyncfnmain(){let(tx,rx)=mpsc::channel();thread::spawn(move

{letsys=System::new("

1
查看完整版本: actixweb自包含HTTP服