From 8248e3150084e898950d69081bc46005a41ad61e Mon Sep 17 00:00:00 2001 From: pengda <1111@qq.com> Date: Mon, 4 Aug 2025 10:02:30 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E8=AF=95=E8=B7=A8=E5=9F=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/request.js | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/utils/request.js b/src/utils/request.js index 4594f86..c89ba55 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -1,5 +1,6 @@ // src/utils/request.js import axios from "axios"; +import qs from 'qs'; import { handleTokenRefresh } from '@/utils/loginRefresh'; import { host } from '@/config/host'; @@ -98,11 +99,26 @@ const request = (method, url, data = {}, config = {}) => { ...config, }); } else { + let requestData = data; + + // 如果 Content-Type 是 application/x-www-form-urlencoded,进行序列化 + if ( + config.headers && + config.headers['Content-Type'] === 'application/x-www-form-urlencoded' + ) { + requestData = qs.stringify(data); + } else if ( + !config.headers && + service.defaults.headers['Content-Type'] === 'application/x-www-form-urlencoded' + ) { + requestData = qs.stringify(data); + } + // 其他请求(POST, PUT, DELETE 等)将参数放在请求体中 return service({ method: lowerCaseMethod, url, - data, + data: requestData, ...config, }); }