`

【http】HTTP请求中 request payload 和 formData 区别?

阅读更多
FormData和Payload是浏览器传输给接口的两种格式,这两种方式浏览器是通过Content-Type来进行区分的(了解Content-Type),如果是 application/x-www-form-urlencoded的话,则为formdata方式,如果是application/json或multipart/form-data的话,则为 request payload 的方式。 比如如下使用ajax方式的提交post请求的代码(默认使用application/x-www-form-urlencoded编码): 复制代码


发送post请求

// <![CDATA[
    var obj = {
      "name": 'CntChen',
      "info": 'Front-End',
    };
    $('.btn').click(function() {
      $.ajax({
        url: 'www.example.com',
        type: 'POST',
        dataType: 'json',
        data: obj,
        success: function(d) {
         
        }
      })
    });
 
// ]]>
复制代码 如下图所示: [img][/img] 2. 使用 multipart/form-data表单上传文件 如下html代码: 复制代码


username:

age:
复制代码 如下图所示: 可以看到 使用multipart/form-data表单上传文件时使用的是 Request Payload 格式; 3. 使用 Content-Type: application/json 来编码 如下html代码: 复制代码


发送post请求

// <![CDATA[
    $('.btn').click(function() {
      $.ajax({
        url: 'http://localhost:8081/api.json',
        type: 'POST',
        dataType: 'json',
        contentType: 'application/json',
        data: JSON.stringify({a: [{b:1, a:1}]}),
        success: function(d) {
         
        }
      })
    });
 
// ]]>
复制代码 如下图所示
  • 大小: 248.9 KB
  • 大小: 226.6 KB
  • 大小: 239.8 KB
分享到:
评论

相关推荐

    Servlet获取AJAX POST请求中参数以form data和request payload形式传输的方法

    本篇文章主要探讨如何在Servlet中处理AJAX POST请求,特别是当请求参数以`form data`和`request payload`两种不同形式传递时。 首先,理解HTTP请求的基本结构。GET请求的参数通常附加在URL后面,而POST请求的参数...

    Python爬虫:Request Payload和Form Data的简单区别说明

    在POST请求中,数据的提交方式有两种主要的形式:`Request Payload`和`Form Data`。这两种方式的区别主要体现在`Content-Type`请求头的设置上。 1. **Form Data**: - `Form Data` 是指按照`application/x-...

    C# post 传值 和接收值实例

    总结,C#中实现POST请求涉及到HttpClient的使用,包括创建请求、设置请求头、封装请求数据以及处理响应。而服务器端接收POST请求的值,通常通过Web API或MVC控制器的方法来实现。正确理解和运用这些知识,能够帮助...

    17axios踩坑笔记1

    深入理解`FormData`和`Request Payload`的区别很重要。`FormData`主要用于模拟传统HTTP表单提交,适合上传文件或需要多部分数据的情况,而`Request Payload`则是以JSON格式发送数据,更适合复杂的数据结构和API通信...

    详解vue使用$http服务端收不到参数

    具体表现为前端使用$http方法发送数据时,将数据以JSON格式作为请求体(RequestPayload)发送,而后端使用Spring框架编写,以参数注解@RequestBody来接收数据。由于前端发送的是JSON对象,后端又期望通过@RequestBody...

    axios详解-从零开始轻松搞定:探索Axios多对象传值与文件上传下

    2. **Request Payload**:适用于POST、PUT等请求,将参数放入请求体中。例如: ```javascript axios.post('/user', { ID: 12345, name: 'John Doe' }) ``` 这里,`params` 对象被转换为 JSON 格式并自动设置正确的...

    python使用scrapy发送post请求的坑

    在Python的Web爬虫开发中,Scrapy框架和requests库都是常用工具,它们在处理HTTP请求时各有特点。本文将重点讨论使用Scrapy发送POST请求时可能会遇到的问题以及与requests库的不同之处。 首先,让我们回顾一下...

    axios进阶实践之利用最优雅的方式写ajax请求

    `render`函数用于动态渲染URL中的变量,而`fire`函数封装了`axios`的请求过程,处理了`contentType`的设置和数据序列化。 ```javascript // request.js import axios from 'axios'; import qs from 'qs'; // 用于...

    ajax post方式表单提交setRequestHeader报错解决方法

    4. Request Payload:这是Chrome开发者工具网络面板中的一个概念,它指的是POST请求体中提交的数据。正常情况下,如果设置了正确的`Content-Type`为`application/x-www-form-urlencoded`,数据应该在Request Payload...

    axios异步提交表单数据的几种方法

    首先,问题的核心在于axios默认的POST请求数据格式为"Content-Type": "application/json",即Request Payload格式,这种格式的数据在前端直接发送时,可能无法被SpringSecurity或其他后端服务正确解析。为了解决这个...

Global site tag (gtag.js) - Google Analytics