Có 2 môi trường mà web chúng ta có thể render
Client: đại diện trình duyệt người dùng Server: đại diện cho máy chủ nơi chứa data và trả về response
Client và Server là 2 môi trường tách biệt với nhau. Đây gọi là Network Boundary
Vì next.js có khả năng render code React ở server và client nên đôi khi dev hiểu nhầm rằng 2 môi trường là một.
Với Next.js, code lúc nào cũng phải phân biệt rõ ràng giữa 2 môi trường này bằng từ khóa 'use client'
hoặc 'use server'
Ví dụ đang ở môi trường client, muốn truy cập data ở server thì cần phải gửi 1 request mới đến server mới lấy được.