Enctype= Multipart/Form-Data Là Gì
Trong vượt trình thao tác làm việc với API, mình chạm chán một chút sự việc với kiểu dáng mã hóa dữ liệu khi submit form cùng gửi dữ liệu cho server. Sau khi tìm hiểu, bạn muốn chia sẻ lại kiến thức và kỹ năng này cũng đều người, mong muốn nó sẽ giúp chúng ta hiểu phần nào.
Bạn đang xem: Enctype= multipart/form-data là gì
1. Giới thiệu
Bây giờ, ta đang đi sâu vào những loại này rộng nhé.
2. URL Encoded Form
Ví dụ:
Ở đây, cách thức đước áp dụng là cách thức POST, như vậy dữ liệu sẽ sở hữu trong body toàn thân của request. Mẫu mã mã hóa được sử dụng ở đây là kiểu URL Encoded. Hiểu đơn giản và dễ dàng thì dữ liệu được màn trình diễn dưới dạng (key, value), nối cùng với nhau bởi ký hiệu & thành một chuỗi (long string). Trong những cặp (key, value), key cùng value tách bóc nhau bở dấu =.
Ví dụ: key1=value1&key2=value2
Với form như trong lấy ví dụ như thì dữ liệu gửi lên sẽ là: username=sidthesloth&password=slothsecret.
Ngoài ra, chú ý thuộc tính kích hoạt của form gồm /urlencoded?firstname=sid&lastname=sloth. Dữ liệu này và dữ liệu truyền lên từ khung giống nhau về dạng hình mã hóa.

3. Multipart Forms
Xem tin tức của request:

Xem thêm: Meaning Of Scrambled Eggs Là Gì, Scrambled Eggs Là Gì
Content-Type Header
Ngoài giá trị multipart/form-data, nghỉ ngơi Content-Type còn có giá trị boundary. Giá trị này do trình duyệt tạo thành ra, nhưng nếu bắt buộc thì ta vẫn hoàn toàn có thể xác định nó.
Request Body
Mỗi cặp (key, value) được màn biểu diễn dưới dạng:
-->Content-Disposition: form-data; name=">">Kết thúc payload sẽ là cực hiếm của boundary nối với kí hiệu --.
-->Content-Disposition: form-data; name=">">-->Content-Disposition: form-data; name=">">-->--Như vậy, với hình dáng mã hóa application/x-www-form-urlencoded, từng cặp (key, value) được phân làn với nhau bằng dấu & cho chép hệ thống biết nơi ban đầu và hoàn thành của một tham số. CÒn với giao diện multipart/form-data, các giá trị boundary thực hiện công việc này.
Ví dụ, nếu đặt boundary=XXX thì
Content-Type: multipart/form-data; boundary=XXXpayload có dạng:
--XXXContent-Disposition: form-data; name="username"sidthesloth--XXXContent-Disposition: form-data; name="password"slothsecret--XXX--Như vậy, trình chăm sóc sẽ phát âm được ban đầu và ngừng của các giá trị.
4. Text/plain Forms
Kiểu mã hóa này tương tự với kiểu dáng URL encoded forms, ko kể việc các trường của size không được mã hóa khi gửi lên server. Kiểu này không được dùng rộng rãi vì định dạng này rất có thể đọc được với kém bảo mật. Để phát âm hơn, chúng ta có thể đọc trên đây.
Xem thêm: Sách Self Help Là Gì ? Các Thể Loại Sách Self Help? Nên Hay Không Nên Đọc?
5. Tổng kết
Trên đó là một số tìm kiếm hiểu của mình về những loại HTML khung Encoding. Tuy không thật sự hoàn hảo nhưng muốn rằng hoàn toàn có thể giúp chúng ta hiểu và biệt lập cơ bản. Cảm ơn những bạn.
Tài liệu tham khảo
https://dev.to/sidthesloth92/understanding-html-form-encoding-url-encoded-and-multipart-forms-3lpa#:~:text=application%2Fx-www-form,user wants lớn upload files
https://stackoverflow.com/questions/4007969/application-x-www-form-urlencoded-or-multipart-form-data