Blog
Series
Roadmap
Danh sách bài viết
Tổng quan
REST & HTTP Foundation
Bài 1: REST Là Gì?
Bài 2: HTTP Methods: GET, POST, PUT, PATCH, DELETE
Bài 3: HTTP Status Codes: 2xx/3xx/4xx/5xx
Bài 4: HTTP Headers Cần Biết
Bài 5: Content Negotiation: Accept, Content-Type, Vary
Bài 6: JSON Format Trong REST
Bài 7: REST vs RPC vs GraphQL — Khi Nào Chọn Cái Nào
Bài 8: OpenAPI & Swagger — API Documentation
Bài 9: Tool Test API: Postman, curl, HTTPie
Bài 10: Setup Project Rust API
Axum Overview
Bài 11: Axum Là Gì? Sinh Ra Từ Đâu
Bài 12: Hello World Với Axum
Bài 13: Route Handler — Function Signature
Bài 14: Response Types: String, Html, Json, StatusCode
Bài 15: JSON Serialization Với serde + axum::Json
Bài 16: Error Response Pattern Với IntoResponse
Bài 17: Project Structure Cho Axum App
Bài 18: Async Handler Và tokio Runtime
Bài 19: axum-extra: Cookies, TypedHeader, Form, ...
Bài 20: Hệ Sinh Thái Axum: tower-http, tower, hyper
Routing Cơ Bản
Bài 21: Route Methods: GET, POST, PUT, DELETE, PATCH
Bài 22: Path Parameters Với Path<T>
Bài 23: Query Parameters Với Query<T>
Bài 24: Nested Routes — Router::nest
Bài 26: Route Ordering — Pitfall Thứ Tự
Bài 27: Redirect & Serve Static Files
Bài 28: Route Với State<T>
Bài 29: route_layer vs Layer — Khác Biệt
Bài 30: API Versioning: URL vs Header
Extractors Và Response Sâu
Bài 31: Extractor Trait — Bản Chất
Bài 32: Custom Extractor
Bài 33: Header Extractor Typed (TypedHeader)
Bài 34: Cookie Extractor: Plain, Signed, Private
Bài 35: Form Extractor Cho HTML Form
Bài 36: Multipart Upload: File + Field
Bài 37: Raw Body & Bytes Extractor
Bài 38: Streaming Body — body::Body
Bài 39: Extension Extractor — Request-Scoped Data
Bài 40: Response Builder — Custom IntoResponse
JSON Body Streaming
Bài 41: JSON Extract + Validation Với validator Crate
Bài 42: JSON Field Pitfalls — Optional, Default, Null
Bài 43: JSON Enum — Internally/Externally/Adjacently Tagged
Bài 44: Newtype Pattern + serde flatten
Bài 45: JSON Skip + Rename — Ẩn Field Và Đổi Tên Wire
Bài 46: Custom Serializer + Deserializer Với Visitor Pattern
Bài 47: Vec, HashMap, BTreeMap Trong JSON
Bài 48: JSON Parse Error Detail — Line, Column, Path
Bài 49: NDJSON + Streaming JSON Parse
Bài 50: HTTP Compression — gzip, deflate, brotli
PostgreSQL + sqlx
Bài 51: PostgreSQL Setup Với sqlx
Bài 53: sqlx query_as! Macro Sâu — Compile-Time Check + FromRow
Bài 54: sqlx Transaction + Savepoint — ATOMIC Order Creation
Bài 55: sqlx Error Mapping Sâu — SQLSTATE Và Domain Error
Bài 56: sqlx Pool Configuration Sâu
Bài 57: sqlx Pool Benchmark + Observability
Bài 58: sqlx Offline Cache + CI/CD Workflow
Bài 59: sqlx Dynamic Query — QueryBuilder + Conditional WHERE
Bài 60: PostgreSQL JSONB + Array Indexing
CRUD HTTP Endpoints
Bài 61: CRUD HTTP Endpoint Overview — Resource Modeling
Bài 62: Products CRUD Hoàn Chỉnh — ETag + Soft Delete
Bài 63: Categories Tree CRUD — Adjacency List + Materialized Path
Bài 64: Products ↔ Categories M:N Relation
Bài 65: Soft Delete Pattern Đầy Đủ + Update Parent
Bài 66: POST /orders Endpoint Hoàn Chỉnh — Idempotency + Retry
Bài 67: GET /orders List + Filter — Cursor Pagination + N+1 Avoidance
Bài 69: Cart Endpoints — Session Cart + Checkout Flow
Bài 70: Users Register + Profile — Argon2 + Email Verification
Bài 71: Payment Stripe Integration — PaymentIntent + Webhook
Bài 73: Domain Error Pattern Unified — thiserror + From Mapping
Bài 74: CRUD Macro Derive — Auto-Generate Endpoint
Bài 75: End-to-End CRUD Integration Test — Cart → Order → Payment
Middleware Sâu
Bài 76: Middleware Overview — Tower Layer Architecture
Bài 77: CORS + Security Headers — Hardening Production
Bài 78: Rate Limiting — governor + Per-IP, Per-User
Bài 79: Body Limit Per-Route — 4-Layer DoS Defense
Bài 80: Trace Layer + Structured Logging — Production Observability
Bài 81: Metrics Prometheus Middleware Sâu
Bài 82: Timeout Per-Route — tower-http TimeoutLayer + 504 Response
Bài 83: Request Validation + Input Sanitize — Hardening Layer
Bài 84: Fallback Handler — 404, 405, OPTIONS Uniform Response
Bài 85: Middleware Integration Test — 11 Layer Stack
Auth + JWT
Bài 86: JWT Auth Overview — Structure + Algorithm + Design
0 lượt xem