小程序 POST 请求传递 FormData 格式参数

这篇具有很好参考价值的文章主要介绍了小程序 POST 请求传递 FormData 格式参数。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

场景

向服务端发起POST请求时,有些接口的参数需要以 FormData 形式传递。

小程序中没有FormData对象,使用 let formdata = new FormData() 创建对象,会报错 FormData is not defined

let formdata = new FormData()
formdata.append('a', 1)
formdata.append('b', 2)

// ReferenceError: FormData is not defined

解决方案

1、配置请求头header: ‘content-type’: ‘application/x-www-form-urlencoded; charset=UTF-8’
2、参数修改为 字符串拼接形式:a=1&b=2

uni.request({
  url: '接口地址',
  method: 'POST',
  data: `a=1&b=2`,
  header: {
    'content-type': 'application/x-www-form-urlencoded; charset=UTF-8'
  },
  success: res => {
    // do something
  },
  fail: err=> {}
})

代码示例

小程序中 request 请求一般都会进行全局封装,如果直接在封装函数中设置 header 会影响其他接口的调用

可以在需要使用 FormData 形式传参的api中设置 header,通过参数进行传递

api.js

import { request } from '@/utils/request.js'

export function test(data) {
  return request({
    header: {
      'content-type': 'application/x-www-form-urlencoded; charset=UTF-8'
    },
    url: '接口地址',
    method: 'post',
    data
  })
}

request.js文章来源地址https://www.toymoban.com/news/detail-633024.html


export const request = options => {
  return new Promise((resolve, reject) => {
    uni.request({
      url: `${process.env.config.requestURL}${options.url}`,
      method: options.method || 'GET',
      data: options.data || {},
      timeout: 60000,
      header: {
        ...options.header
      },
      success: res => resolve(res),
      fail: err => reject(err)
    })
  })
}

到了这里,关于小程序 POST 请求传递 FormData 格式参数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • http之GET请求和POST请求的传递参数的方式

    get: 情况1:接口正常返回 code,data,message ,且无需传递参数 (vu3) 情况2: 需要将参数拼接到url地址上 (vue3)   情况3 需要传递参数,query 传参 (vue3) 情况4 既有query传参也有path传参 post 情况1 接口返回的数据没有使用data包裹,这种情况一般取不到数据,我们需要用 ext

    2024年02月16日
    浏览(41)
  • node.js中获取前端传递的get、post请求参数

    req.query:get请求; req.body:post请求; (1) get请求:  (2) post请求:      第一步:下载body-parser模块      第二步:引入body-parser模块      第三步:使用body-parser模块      第四步:使用body-parser模块的参数json方法      第五步:获取参数

    2024年02月13日
    浏览(42)
  • 使用HuTool的Http工具发送post传递中文参数,请求会乱码的解决方法

    Hutool 是一款功能丰富、易用的Java工具类库,我们在工作中经常会使用它的各种类库方法简化我们的开发,其中我们甚至能通过它的Http工具类直接发送http的各种请求,下面来介绍一下发送post请求时参数中有中文出现乱码的解决方法。 这样就不会造成请求参数出现乱码问题

    2024年02月01日
    浏览(42)
  • Postman Post请求四种参数传递方式与Content-Type对应关系

    Postman post 请求四种数据传递类型代表的Content-Type类型: 1、form-data : 对应的Content-Type:multipart/form-data;boundary= 表示文件上传; 2、x-www-form-urlencoded:对应的Content-Type:application/x-www-form-urlencoded 表示表单提交; 3、raw:对应的Content-Type分为五类: 4、binary:对应的Content-Type:ap

    2024年02月05日
    浏览(52)
  • 【vue】post请求的参数格式转换为字符串拼接

    我在提交表单的时候,发现一直报500这个错,说是超时,但是我反复查看,并没有什么问题。后来我请求大佬说是请求接口的参数的问题,使用对象JSON的形式就是获取不到,必须是字符串拼接的格式才可以(默默地说,post默认参数是对象JSON格式传递,传字符串拼接的格式是

    2024年02月12日
    浏览(64)
  • ApiPost6/Postman发送POST请求及日期格式的参数

    Postman在发送POST请求的时候,所有参数写在Request Body(请求体)中,如果需要的参数类型的日期格式的,只需要将日期格式写为2000/01/01即可,Postman会自动识别为日期格式的数据。 如果是2000-01-01格式,Postman无法识别为日期,而是当做普通字符串处理。 实际案例

    2024年02月11日
    浏览(43)
  • java业务代码发送http请求(Post方式:请求参数为JSON格式;Get方式)

    实际开发中,可能需要发送http请求到第三方服务获取数据,于是就有以下应用: 依赖: 假设我需要在我的业务代码中调用该地址: url:http://xx.xx:xxxx/user/count 请求方法:post 内容类型:application/json 请求参数:id, username 返回参数:code 响应结果 int类型                  

    2024年02月12日
    浏览(56)
  • requests库post请求参数data、json和files的使用,postman的各种数据格式

    application/x-www-form-urlencoded 和 application/json 是两种不同的 HTTP 请求体格式,它们在 Python 中的处理方式也不同。 application/x-www-form-urlencoded 是 Web 表单默认的提交方法,浏览器会将表单数据编码为 key-value 键值对,并将其放在请求体中。该格式数据可以通过 Python 中的标准库 url

    2024年02月16日
    浏览(64)
  • requests之post请求data传参和json传参区别

    在一次接口post测试请求传参异常的记录 传输到后台服务器报了异常 显而易见我的请求头的content-type类型有异常了,但我明明传的是application/json为什么给我转成了另外的格式呢? 在解释之前先提一下 httpbin.org 这个网站,这个网站的介绍是 A simple HTTP Request Response Service. ,简

    2024年02月10日
    浏览(47)
  • Java http GET POST 请求传参

    HTTP POST请求传参方式 方式一: 方式二 HTTP GET请求传参方式

    2024年02月15日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包