Formdata Conversion
When making Inertia requests that include files (even nested files), Inertia will automatically convert the request data into aFormData object. This conversion is necessary in order to submit a multipart/form-data request via XHR.
If you would like the request to always use a FormData object regardless of whether a file is present in the data, you may provide the forceFormData option when making the request.
FormData interface via its MDN documentation.
Prior to version 0.8.0, Inertia did not automatically convert requests to FormData. If you’re using an Inertia release prior to this version, you will need to manually perform this conversion.
File Upload Example
Let’s examine a complete file upload example using Inertia. This example includes both aname text input and an avatar file input.
Multipart Limitations
Uploading files using amultipart/form-data request is not natively supported in some server-side frameworks when using the PUT,PATCH, or DELETE HTTP methods. The simplest workaround for this limitation is to simply upload files using a POST request instead.
However, some frameworks, such as Laravel and Rails , support form method spoofing, which allows you to upload the files using POST, but have the framework handle the request as a PUT or PATCH request. This is done by including a _method attribute in the data of your request.