enctype 是指定将数据回发到服务器时浏览器使用的编码类型,其编码类型有以下三种,下面通过示例为大家详细介绍下其具体的使用

编码类型有以下三种:

application/x-www-form-urlencoded: 在发送前编码所有字符(默认)。这是标准的编码格式。
multipart/form-data: 不对字符编码,在使用包含文件上传控件的表单时,必须使用该值。
text/plain: 窗体数据以纯文本形式进行编码,其中不含任何控件或格式字符。

enctype=”multipart/form-data”是上传二进制数据过去。

为什么上传文件要设置 enctype=”multipart/form-data”

因为设置 enctype 为 multipart/form-data 值后,不对字符编码,则数据通过二进制的形式传送到服务器端,这时如果用 request 是无法直接获取到相应表单的值的,而应该通过 stream 流对象,将传到服务器端的二进制数据解码,从而读取数据。

如果要上传文件的话,是一定要将 encotype 设置为 multipart/form-data 的。

本文地址 https://shaoshilei.com/2016-08/form-enctype.html