连接管理
2026/2/15小于 1 分钟hyperlanewebrustusage-introductionconnection
提示
hyperlane 框架提供了完整的连接状态管理功能,包括连接的中止、关闭状态控制,以及 Keep-Alive 连接支持。
连接状态管理
获取连接状态
// 是否中止生命周期中的后续流程
let is_aborted: bool = ctx.get_set_aborted(true);
// 连接是否断开
let is_closed: bool = ctx.get_set_closed(true);
// 是否停止(等价于is_aborted || is_closed)
let is_terminated: bool = ctx.is_terminated();设置连接状态
ctx.set_aborted(true);
ctx.set_closed(true);Keep-Alive 连接
检查是否启用 Keep-Alive
let keep_alive: bool = ctx.get_request().is_enable_keep_alive();基本使用示例
连接状态检查
if ctx.get_set_closed(true) {
return;
}手动管理长连接
框架默认会处理长连接,对开发者也提供了手动管理长连接的方式。
while ctx.http_from_stream().is_ok() {
if !ctx.get_request().is_enable_keep_alive() {
ctx.set_closed(true);
break;
}
}