场景 向服务端发起POST请求时,有些接口的参数需要以 FORMData 形式传递。 小程序中没有FormData对象,使用 let formdata = new 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
配置请求头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
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) }) })}
来源地址:https://blog.csdn.net/weixin_45559449/article/details/131074609
--结束END--
本文标题: 小程序 POST 请求传递 FormData 格式参数
本文链接: https://www.lsjlt.com/news/394412.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-01-21
2023-10-28
2023-10-28
2023-10-27
2023-10-27
2023-10-27
2023-10-27
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0