uni-app -- - - - ¿Cómo envía el subprograma datos en formato de datos de formulario al backend?

¿Cómo envía el subprograma datos en formato de datos de formulario al backend?

Por favor 求方式 & 传参方式, la interfaz definitivamente no es estática. Cuando se encuentre con tales requisitos, debe saber, 小程序是没有FormData对象sí, entonces, ¿cómo operarla? ? ?

1. Código

Vaya directamente al código:

wx.request({
    
    
	url: 'https://****.**.com',
	method: 'POST',
	header: {
    
    
		'content-type': 'multipart/form-data; boundary=XXX'
	},
	data: '\r\n--XXX' +
		'\r\nContent-Disposition: form-data; name="key1"' +
		'\r\n' +
		'\r\nvalue1' +
		'\r\n--XXX' +
		'\r\nContent-Disposition: form-data; name="key2"' +
		'\r\n' +
		'\r\nvalue2' +
		'\r\n--XXX--',

	success: (res) => {
    
    
		console.log('接口返回值 => ', res)
	}
})

El efecto es como se muestra en la figura:
inserte la descripción de la imagen aquí

2. Optimización

Como se muestra arriba, la función se implementa cuando se escribe de esta manera, pero parece que el código es demasiado feo.

2.1 Método de mezcla global:

/**
 * 格式化formData数据
 */
formdata(obj = {
     
     }) {
    
    
	let result = ''
	for (let name of Object.keys(obj)) {
    
    
		let value = obj[name];
		result +=
			'\r\n--XXX' +
			'\r\nContent-Disposition: form-data; name=\"' + name + '\"' +
			'\r\n' +
			'\r\n' + value
	}
	return result + '\r\n--XXX--'
}

2.2 Uso específico de la página

// 需要的数据
let obj = {
    
    
	'key1': 'value1',
	'key2': 'value2'
}
wx.request({
    
    
	url: 'https://www.jiuwa.net/tools/api.php?type=cbwm',
	method: 'POST',
	header: {
    
    
		'content-type': 'multipart/form-data; boundary=XXX'
	},
	data: this.formdata(obj), // 使用mixin混入的方法
	success: (res) => {
    
    
		console.log('结果', res)
	}
})

El efecto es como se muestra en la figura:
inserte la descripción de la imagen aquí



Artículo de referencia:
Cómo enviar solicitudes de datos de formulario/multiparte usando wx.request

Supongo que te gusta

Origin blog.csdn.net/Dark_programmer/article/details/130703304
Recomendado
Clasificación