Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 2

Routing trong ASP.

NET Core Web API là quá trình xác định cách các yêu cầu HTTP được ánh xạ tới các
endpoint, thường là các action method trong controller. Giúp quản lý và xử lý các yêu cầu HTTP một
cách hiệu quả và linh hoạt, đồng thời tạo ra các API endpoints rõ ràng và dễ sử dụng.

Routing được kích hoạt thông qua Middleware trong quy trình xử lý yêu cầu HTTP. Để kích hoạt Routing
trong ASP.NET Core, chúng ta cần thêm hai middleware components

UseRouting(): Kích hoạt khả năng routing cho ứng dụng nhưng không thực hiện ánh xạ URL tới bất kỳ tài
nguyên nào.

UseEndpoints(): Ánh xạ URL tới các tài nguyên. Trong ngữ cảnh của ASP.NET Core Web API, chủ yếu là
ánh xạ tới các action method.

2. Cấu hình Middleware Routing

từ .NET6, quy trình này đã được đơn giản hóa và tự động hóa hơn.

Ở .NET 6, khi bạn sử dụng app.MapControllers(), thực tế là bạn đã kích hoạt và cấu hình đầy đủ
middleware cần thiết để xử lý routing và ánh xạ các endpoint của API của bạn.

Khi bạn gọi app.MapControllers(), nó không chỉ ánh xạ các endpoint của API mà còn tự động kích hoạt
middleware UseRouting() và UseEndpoints() bên trong nó.

3. Attribute Routing

Attribute Routing là cách được ưa chuộng nhất để định nghĩa các routes trong ASP.NET Core Web API.
Nó cho phép bạn định nghĩa route trực tiếp trên các action method trong controller giúp việc quản lý
endpoint của API dễ dàng hơn

Như mọi người đã trải nhiệm và cũng đã biết thì [Route("api/[controller]")] giúp định nghĩa endpoint
trong Controller bắt đầu bằng /api/products/. "[controller]" sẽ được thay thế bởi tên của controller sẽ
được thay thế bằng tên controller tương ứng.

Và [HttpGet("user/{username}")] sẽ kết hợp với phần route được định nghĩa trên controller để tạo ra một
endpoint hoàn chỉnh.

4. Biến và Query Strings trong Routing:

Trong Ứng dụng web ASP.NET Core, nếu bạn muốn truyền bất cứ thứ gì dưới dạng biến thì bạn cần sử
dụng dấu ngoặc nhọn {} và bên trong dấu ngoặc nhọn, bạn cần đặt tên của tham số mà phương thức của
bạn chấp nhận.

5. Truyền nhiều giá trị động


Trong nhiều trường hợp thay vì truyền nhiều biến và chúng được ngăn cách nhau bởi dấu / (gạch chéo)

6. Nhiều URL cho một tài nguyên bằng cách sử dụng Định tuyến

Bạn có thể ánh xạ nhiều URL tới cùng một action method bằng cách sử dụng nhiều attribute.

You might also like