跳至主要內容

ControllerData类型

ltpp-universe小于 1 分钟hyperlanewebrust

提示

ControllerData 作为中间件和路由处理函数的参数类型,具体类型定义如下

#[derive(Clone, Debug, Lombok)]
pub struct ControllerData {
    pub(super) stream: OptionArcTcpStream,
    pub(super) request: Request,
    pub(super) response: Response,
    pub(super) log: Log,
}

请求

获取请求信息

let controller_data = arc_lock_controller_data.write().unwrap();
let request: Request = controller_data.get_request().clone();

获取可变请求信息

let controller_data = arc_lock_controller_data.write().unwrap();
let request: &mut Request = controller_data.get_mut_request();

设置请求信息

let mut controller_data = arc_lock_controller_data.write().unwrap();
controller_data.set_request(Request::default());

stream

获取 stream

let controller_data = arc_lock_controller_data.write().unwrap();
let stream: Arc<TcpStream> = controller_data.get_stream().clone().unwrap();

获取可变 stream

let mut controller_data = arc_lock_controller_data.write().unwrap();
controller_data.get_mut_stream().and_then(|mut stream| {});

设置 stream

let mut controller_data = arc_lock_controller_data.write().unwrap();
controller_data.set_stream(None);

响应

获取响应

let controller_data = arc_lock_controller_data.write().unwrap();
let response: Response = controller_data.get_response().clone();

获取可变响应

let mut controller_data = arc_lock_controller_data.write().unwrap();
let response: &mut Response = controller_data.get_mut_response();

设置响应

let mut controller_data = arc_lock_controller_data.write().unwrap();
controller_data.set_response(Response::default());

日志

获取日志

let controller_data = arc_lock_controller_data.write().unwrap();
let log: &Log = controller_data.get_log();

获取可变日志

let mut controller_data = arc_lock_controller_data.write().unwrap();
let log: &mut Log = controller_data.get_mut_log();

设置日志

let mut controller_data = arc_lock_controller_data.write().unwrap();
controller_data.set_log(Log::default());

赞赏

作为这个项目的唯一开发者,我一直在努力确保后端服务器的稳定运行和服务的持续提供。这个项目凝聚了我所有的心血和热情,但服务器费用和网站维护确实是一个不小的负担。

如果您觉得这个项目对您有帮助,或希望支持一个坚持不懈的个人开发者,无论金额大小,您的赞助都将是对我的莫大鼓励。每一份支持都会直接用于服务器和维护成本,让这个项目能够继续为大家提供服务。感谢您的信任和支持!

上次编辑于:
贡献者: 尤雨东