Chuyển đổi FormData
Khi thực hiện request Inertia có chứa file (kể cả file lồng nhau), Inertia sẽ tự động chuyển đổi dữ liệu request thành object FormData. Việc chuyển đổi này là cần thiết để gửi request multipart/form-data qua XHR.
Nếu muốn request luôn sử dụng object FormData bất kể dữ liệu có chứa file hay không, bạn có thể truyền tùy chọn forceFormData khi thực hiện request.
FormData trong tài liệu MDN.
Ví dụ tải file lên
Hãy xem một ví dụ hoàn chỉnh về tải file lên bằng Inertia. Ví dụ này bao gồm cả input văn bảnname và input file avatar.
Giới hạn của multipart
Việc tải file bằng requestmultipart/form-data không được hỗ trợ nguyên bản trong một số framework phía máy chủ khi sử dụng các HTTP method PUT, PATCH hoặc DELETE. Cách đơn giản nhất để khắc phục giới hạn này là tải file bằng request POST.
Tuy nhiên, một số framework như Laravel và Rails hỗ trợ form method spoofing, cho phép tải file bằng POST nhưng để framework xử lý request như PUT hoặc PATCH. Cách này được thực hiện bằng cách thêm thuộc tính _method vào dữ liệu request.