微前端架构如何改变企业的开发模式与效率提升
1041
2022-11-13
四种常见的post请求中的参数形式
1)、HTTP 协议是以 ASCII 码 传输,建立在 TCP/IP 协议之上的应用层规范。规范把 HTTP 请求分为三个部分:状态行、请求头、消息主体。 2)、协议规定 POST 提交的数据必须放在消息主体(entity-body)中,但协议并没有规定数据必须 使用什么编码方式 。实际上,开发者完全可以自己决定消息主体的格式,只要最后发送的 HTTP 请求满足上面的格式就可以。 3)、数据发送出去,还要服务端解析成功才有意义。一般服务端语言如 php、python 等,以及它们的 framework,都内置了自动解析常见数据格式的功能。服务端通常是根据请求头(headers)中的 Content-Type 字段来获知请求中的消息主体是用何种方式编码,再对主体进行解析。
form表单中enctype属性可以用来控制对表单数据的发送前的如何进行编码,enctype有三种,分别为:
multipart/form-data不对字符编码,用于发送二进制的文件,其他两种类型不能用于发送文件;
text/plain用于发送纯文本内容,空格转换为 "+" 加号,不对特殊字符进行编码,一般用于email之类的;
application/x-"+" 加号,"+"加号转换为空格,特殊符号转换为 ASCII HEX 值)。
其中application/x-这应该是最常见的 POST 提交数据的方式了。浏览器的原生
此时看到
Content-Type: application/x-被指定为 application/x-key1=val1&key2=val2 的方式进行编码,key 和 val 都进行了 URL 转码。大部分服务端语言都对这种方式很好的支持,常用的如jQuery中的ajax请求,Content-Type 默认值都是「application/x-这也是常见的post请求方式,一般用来上传文件,各大服务器的支持也比较好。所以我们使用表单 上传文件 时,必须让
发表评论
暂时没有评论,来抢沙发吧~