内置中间件
1. 请求时间日志
use silent::middleware::RequestTimeLogger;
// 创建基础日志记录器
let logger = RequestTimeLogger::new();
// 可以自定义日志格式和输出方式
let custom_logger = RequestTimeLogger::new()
.with_format(|method, uri, time| {
format!("[{}] {} - {}ms", method, uri, time.as_millis())
});2. 异常处理
use silent::middleware::ExceptionHandler;
use silent::error::Error;
// 基础异常处理器
let exception_handler = ExceptionHandler::new();
// 自定义错误处理逻辑
let custom_handler = ExceptionHandler::new()
.on_error(|err: Error| async move {
// 自定义错误响应
Response::builder()
.status(err.status_code())
.json(&serde_json::json!({
"code": err.status_code().as_u16(),
"message": err.to_string()
}))
});3. 跨域资源共享 (CORS)
4. 超时处理
使用示例
Last updated