后端接口配置公示
启用转发请求处理,需要在使用组件库时传入第二个参数:当前环境。
Vue.use(JrUi, {
env: process.env.VUE_APP_BULID_TYPE
});
此时组件库中的所有涉及到请求的部分(请求库,带有请求的组件),都会默认根据当前环境以及请求的api路由进行基础地址补全。
比如使用请求库进行请求时,如 api.js 中调用请求库传入的 url,不存在基础地址时。请求库会进行上述规则转发
比如上传组件,未提供 action 属性时,上传组件会根据上述规则转发
如何保证完全向下兼容?
如api使用请求库,传入的url带有基础路径。需要请求的组件提供了具体 action 值。组件库就不会进行请求转发处理
转发逻辑的处理顺序
1. 如传入的url地址以http 或 // 开头,不做转发处理
2. 尝试从配置表中读取该次请求所属的后端地址
3. 如配置表不存在该次请求对应的后端地址,则使用传入的默认地址 `baseUrl`,作为基础地址
当启用了请求转发的模式时,也能够对指定的后端使用特定的请求路径。支持两种修改方式:全局、单个
全局配置:
// 对api/ams路径的后端接口进行修改处理
const http = HttpClient(axios, {
baseUrlData: {
"api/ams": {
"29": "http://192.168.99.43:6667",
"219": "http://192.168.99.33:8875"
}
}
});
单个配置:
// 此次请求使用自定义后端基础路径
export const getCourseList = () => {
const url = `http://192.168.99.43:6678/api/AMS/Course/GetCompulsoryCourseAndLevel`;
return http({
url
});
};
组件提供具体的action值
// 此次请求使用自定义后端基础路径
<jr-upload ref="jrInput"
accept="image/*"
action="http://192.168.99.43:8875"
:maxSize="size"
@add-file='getFile'
@file-result="getResult" />
如何补充遗漏的后端配置?
当前存在 {{ errorCount }} 处配置遗漏,请及时补充处理
{{ item[env] }}