04 SpringMVC 前后端传参协调
问题复现
前端传参
import axios from "axios"
const baseUrl = "http://localhost:8088"
class HttpRequest {
constructor(baseUrl) {
this.baseUrl = baseUrl
this.queue = {}
}
getInsideConfig() {
const config = {
baseURL: this.baseUrl,
headers: {
"Content-Type": "application/json",
},
}
return config
}
destroy(url) {
delete this.queue[url]
}
interceptors(instance, url) {
// 请求拦截
instance.interceptors.request.use(
(config) => {
this.queue[url] = true
return config
},
(error) => {
return Promise.reject(error)
}
)
// 响应拦截
instance.interceptors.response.use(
(res) => {
this.destroy(url)
return res.data
},
(error) => {
this.destroy(url)
return Promise.reject(error)
}
)
}
request(options) {
const instance = axios.create()
options = Object.assign(this.getInsideConfig(), options)
this.interceptors(instance, options.url)
return instance(options)
}
}
const axios = new HttpRequest(baseUrl)
export default axios后端接口
解决方案
方案一 前端修改
方案二 后端修改
最后更新于