Enctype multipart form data là gì

Trong quy trình thao tác làm việc với API, bản thân gặp mặt một chút vụ việc với dạng hình mã hóa dữ liệu lúc submit khung và gửi tài liệu mang lại hệ thống. Sau khi khám phá, mình thích chia sẻ lại kiến thức và kỹ năng này cũng hầu như người, hi vọng nó sẽ giúp chúng ta đọc phần như thế nào.

You watching: Enctype multipart form data là gì

1. Giới thiệu

Bây tiếng, ta sẽ đi sâu vào các loại này hơn nhé.

2. URL Encoded Form

Ví dụ:

Tại trên đây, cách làm đước sử dụng là cách làm POST, như thế tài liệu sẽ có trong body toàn thân của request. Kiểu mã hóa được sử dụng làm việc đó là hình dáng URL Encoded. Hiểu dễ dàng thì dữ liệu được trình diễn bên dưới dạng (key, value), nối cùng nhau bởi ký hiệu & thành một chuỗi (long string). Trong từng cặp (key, value), key với value bóc tách nhau bsinh hoạt vết =.

Ví dụ: key1=value1&key2=value2

Với khung như trong ví dụ thì tài liệu trình lên đã là: username=sidthesloth&password=slothsecret.

Trong khi, chú ý ở trong tính action của form bao gồm /urlencoded?firstname=sid&lastname=sloth. Dữ liệu này và dữ liệu truyền lên từ bỏ size giống như nhau về vẻ bên ngoài mã hóa.

*

*

Crúc ý trường Content-Type cùng payload của request.

See more: Top 10 Game Miễn Phí Thu Hút Nhất Trên Windows Phone 8, Windows Phone Games

Content-Type Header

Ngoài quý hiếm multipart/form-data, ngơi nghỉ Content-Type còn tồn tại giá trị boundary. Giá trị này vị trình thông qua tạo ra, cơ mà trường hợp yêu cầu thì ta vẫ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 vẫn là giá trị của boundary nối với kí hiệu --.

-->Content-Disposition: form-data; name=">">-->Content-Disposition: form-data; name=">">-->--Vậy nên, cùng với loại mã hóa application/x-www-form-urlencoded, mỗi cặp (key, value) được phân cách với nhau bởi vệt & mang lại chnghiền hệ thống biết nơi bắt đầu cùng hoàn thành của một tham mê số. CÒn cùng với dạng hình multipart/form-data, các quý hiếm boundary triển khai các bước này.

ví dụ như, nếu để boundary=XXX thì

Content-Type: multipart/form-data; boundary=XXXpayload tất cả dạng:

--XXXContent-Disposition: form-data; name="username"sidthesloth--XXXContent-Disposition: form-data; name="password"slothsecret--XXX--vì thế, trình xem xét vẫn đọc được bước đầu cùng xong của các quý hiếm.

4. Text/plain Forms

Kiểu mã hóa này gần giống với hình trạng URL encoded forms, không tính vấn đề các ngôi trường của khung ko được mã hóa Khi trình lên VPS. Kiểu này không được dùng rộng thoải mái bởi định dạng đó rất có thể phát âm được cùng kỉm bảo mật. Để hiểu rộng, bạn có thể đọc trên phía trên.

See more: Cách Sửa Ngày Sinh Trên Facebook Trên Điện Thoại Iphone, Android

5. Tổng kết

Trên đấy là một vài mày mò của chính mình về các nhiều loại HTML Form Encoding. Tuy không thật sự hoàn hảo nhưng mà mong rằng có thể góp các bạn gọi và rành mạch cơ bản. Cảm ơn các bạn.

Tài liệu tđắm đuối khảo

https://dev.to/sidthesloth92/understanding-html-form-encoding-url-encoded-and-multipart-forms-3lpa#:~:text=application%2Fx-www-form,user wants khổng lồ upload files

https://stackoverflow.com/questions/4007969/application-x-www-form-urlencoded-or-multipart-form-data