• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

ajax请求体的3种常用类型和场景(1)

武飞扬头像
langziangTom
帮助1

请求体类型content-type

在哪:请求报文->请求头中的Content-Type字段

作用:用来标记请求体内容的类型

 请求头Content-Type类型                             请求体值格式
    1. application/x-www-form-urlencoded     参数名=值&参数名=值 的字符串
    2. application/json                                    '{"参数名": 值, "参数名": 值} 的json字符串
    3. multipart/form-data                               FormData表单数据(常用携带文件)

值得注意的是,三种请求体的数据上传,是需要用到三种不同的方式,其中第一种(查询字符串)和第二种(json对象)方式相似,需要用到语法form-serialize,而第三种(文件数据)上传则需使用语法_FormData

这里先来简单说说form-serialize 表单整体的获取

我们可以使用form-serialize插件,获取整个表单数据

  1. 一定要先引入form-serialize.js 工具
  2. 写js代码。直接调用serialize方法
  3. 注意代码格式如下:
  4. 格式1: serialize(form标签) 返回值是:查询字符串的格式
  5. 格式2: serialize(form标签, { hash: true }) 返回值是: json对象
  6. 注意点:需要获取数据的表单内部标签,里面应该加上name属性!
     
  1.  
    <body>
  2.  
    <form id="form">
  3.  
    <div>
  4.  
    <!-- 用户名 -->
  5.  
    <span>用户名:</span>
  6.  
    <input type="text" name="username">
  7.  
    </div>
  8.  
    <div>
  9.  
    <!-- 密码: -->
  10.  
    <span>登录密码:</span>
  11.  
    <input type="password" name="password">
  12.  
    </div>
  13.  
    <div>
  14.  
    <!-- 提交按钮 -->
  15.  
    <button id="submit">提交</button>
  16.  
    </div>
  17.  
    </form>
  18.  
    <script>
  19.  
    document.querySelector('#submit').addEventListener('click',(e)=>{
  20.  
    e.preventDefault()
  21.  
    const p = serialize(document.querySelector('form'), { hash: true })
  22.  
    console.log(p);
  23.  
    axios({
  24.  
    url:'http://ajax-api.itheima.net/api/data',
  25.  
    method:'POST',
  26.  
    data:p
  27.  
    }).then(res=>{
  28.  
    console.log(res.data.data);
  29.  
    })
  30.  
    })
  31.  
    </script>
  32.  
    </body>
学新通

当我们需要的上传的数据类型是查询字符串时,应该使用

格式1: serialize(form标签) 返回值是:查询字符串的格式

学新通

当我们需要的上传的数据类型是json对象时,应该使用

格式2: serialize(form标签, { hash: true }) 返回值是: json对象

学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgaegie
系列文章
更多 icon
同类精品
更多 icon
继续加载