Middleware di Actix-web
Penjelasan
Middleware adalah logic yang dijalankan sebelum dan/atau sesudah handler utama, cocok untuk kebutuhan lintas-request seperti logging, autentikasi, atau menambahkan header. Actix-web mendaftarkan middleware lewat method `.wrap()` di `App`. Salah satu middleware bawaan yang paling sering dipakai adalah `Logger` dari `actix_web::middleware`, yang mencatat setiap request masuk (method, path, status, waktu proses) ke output log — sangat berguna untuk debugging dan monitoring.
Contoh Konsep
use actix_web::{middleware::Logger, App, HttpServer};
#[actix_web::main]
async fn main() -> std::io::Result<()> {
env_logger::init();
HttpServer::new(|| {
App::new()
.wrap(Logger::default())
})
.bind(("127.0.0.1", 8080))?
.run()
.await
}
Praktikum
Lengkapi konfigurasi agar App memakai Logger middleware default.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Logger middleware butuh crate `env_logger` untuk benar-benar menampilkan output ke terminal — jangan lupa `cargo add env_logger` dan set environment variable $RUST_LOG=info sebelum menjalankan `cargo run` supaya log-nya terlihat.