HTTP中application/x-www-form-urlencoded字符说明

一、概述
在学习ajax的时候,如果用post请求,需要设置如下代码。

ajax.setRequestHeader(“content-type”,”application/x-www-form-urlencoded”);
1
虽然知道需要这么做,但是不知道application/x-www-form-urlencoded表示什么意思。于是百度学习了下。

二、Form表单语法
在Form元素的语法中,EncType表明提交数据的格式 用 Enctype 属性指定将数据回发到服务器时浏览器使用的编码类型。 例如: application/x-www-form-urlencoded: 窗体数据被编码为名称/值对。这是标准的编码格式。 multipart/form-data: 窗体数据被编码为一条消息,页上的每个控件对应消息中的一个部分,这个一般文件上传时用。 text/plain: 窗体数据以纯文本形式进行编码,其中不含任何控件或格式字符。
补充

三、常用的编码方式
form的enctype属性为编码方式,常用有两种:application/x-www-form-urlencoded和multipart/form-data,默认为application/x-www-form-urlencoded。

1.x-www-form-urlencoded
当action为get时候,浏览器用x-www-form-urlencoded的编码方式把form数据转换成一个字串(name1=value1&name2=value2…),然后把这个字串append到url后面,用?分割,加载这个新的url。

2.multipart/form-data
当action为post时候,浏览器把form数据封装到http body中,然后发送到server。 如果没有type=file的控件,用默认的application/x-www-form-urlencoded就可以了。 但是如果有type=file的话,就要用到multipart/form-data了。浏览器会把整个表单以控件为单位分割,并为每个部分加上Content-Disposition(form-data或者file),Content-Type(默认为text/plain),name(控件name)等信息,并加上分割符(boundary)。

OK,简单学习了。
————————————————
版权声明:本文为CSDN博主「李过饰非」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_28702545/article/details/51719199

Original: https://www.cnblogs.com/soundcode/p/16315310.html
Author: 左正
Title: HTTP中application/x-www-form-urlencoded字符说明

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/546100/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 基于ADS1292芯片的解决方案之源码解析

    A 硬件配置ok之后,就剩下软件了。接下来就是接口的配置信息下发了。上电流程如下所示: void ADS1292_PowerOnInit(void) { // ADS_CLKSEL…

    技术杂谈 2023年5月31日
    0102
  • 【源码笔记】ThreadPoolExecutor#getTask

    /** * Performs blocking or timed wait for a task, depending on * current configuration set…

    技术杂谈 2023年7月24日
    078
  • Lua语法要点2

    【 Lua语法要点2】 1、Lua函数 function 可以添加 local 关键字。添加后为局部函数,不添加(默认)为全局函数。return 可以 返回多个返回值,以, 分隔。…

    技术杂谈 2023年5月31日
    076
  • log4j配置输出到多个日志文件

    通常我们项目里,有一些重要的日志想单独的输出到指定的文件,而不是全总输出到系统的日志文件中。那么我们log4j为我们提供了这种功能,以下我们来一步一步看是怎么做的。这里以prope…

    技术杂谈 2023年5月31日
    0104
  • Docker简介与安装

    Docker简介与安装 Docker overview | Docker Documentation 官方文档 1.Docker简介 Docker是一个用于开发、发布和运行应用程序…

    技术杂谈 2023年7月10日
    097
  • Cloud Resource

    Public Cloud Cloud Stack Private Cloud Hybrid Cloud Multi Cloud PaaS Docker K8S Container …

    技术杂谈 2023年5月30日
    081
  • rest_framework框架的认识

    一 路由 可以通过路由as_view()传参 根据请求方式的不同执行对应不同的方法 在routers模块下 封装了很多关于路由的方法 , 最基础的BaseRouter类,给我提供自…

    技术杂谈 2023年6月21日
    0128
  • springboot mybatis plus多数据源轻松搞定 (上)

    在开发中经常会遇到一个程序需要调用多个数据库的情况,总得来说分为下面的几种情况: 下面针对第一种情况,提供一个解决方案。 因为两个数据库的功能和结构不一样,所以可以根据功能和结构把…

    技术杂谈 2023年7月11日
    060
  • Entity Framework Code First迁移基本面拾遗

    项目中用到了EF Code First和迁移,但发现有些方面似懂非懂。比如:如何在迁移文件中控制迁移过程?如果在迁移文件中执行SQL语句?如何使用Update-Database的其…

    技术杂谈 2023年5月31日
    0105
  • Java获取Web服务器文件

    Java获取Web服务器文件 如果获取的是服务器上某个目录下的有关文件,就相对比较容易,可以设定死绝对目录,但是如果不能设定死绝对目录,也不确定web服务器的安装目录,可以考虑如下…

    技术杂谈 2023年7月24日
    079
  • HashMap中红黑树插入节点的调整过程

    一、引言 二、HashMap源码中红黑树插入节点的调整过程 三、阅读HashMap源码的一些Tips 1. 代码风格 2. 变量名 balanceInsertion方法中的变量名 …

    技术杂谈 2023年7月24日
    097
  • 汇编实验十编写子程序

    第一题,显示字符串,8行3列显示Welcome to masm! assume cs:codedata segmentdb ‘Welcome to masm!&#821…

    技术杂谈 2023年6月21日
    087
  • centos 7 安装KVM

    一、安装KVM 实验环境如下: 虚拟机版本:VMware 12.5.7虚拟机需要开启虚拟化,如下图: 系统版本:CentOS Linux release 7.5.1804 (Cor…

    技术杂谈 2023年7月10日
    097
  • Mac下php服务部署

    配置PHP环境 一、[endif]确认apache环境和php环境: 1.检查apache版本: sudo apachectl -version 2.检查php版本: sudo p…

    技术杂谈 2023年5月31日
    095
  • 重学Java泛型

    系列文章目录和关于我 一丶从字节码层面看范型擦除 public class Type1 { private T t; } 使用jclasslib插件查看其字节码: 可以看到 t属性…

    技术杂谈 2023年7月25日
    096
  • iostat命令详解

    iostat 主要是统计 磁盘活动情况。 iostat有以下缺陷: iostat的输出结果大多数是一段时间内的平均值,因此难以反映峰值情况iostat仅能对系统整体情况进行分析汇报…

    技术杂谈 2023年5月31日
    0138
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球