diff --git a/.env.development b/.env.development index df4d804..a655767 100644 --- a/.env.development +++ b/.env.development @@ -13,6 +13,9 @@ VUE_APP_LDAP_PWD = 'hhsxafTuUtVV' # upload VUE_APP_UPLOAD = '/upload/cos' +# area api +VUE_APP_MP = '/mp' + # vue-cli uses the VUE_CLI_BABEL_TRANSPILE_MODULES environment variable, # to control whether the babel-plugin-dynamic-import-node plugin is enabled. # It only does one thing by converting all import() to require(). diff --git a/.env.production b/.env.production index 9d906da..088fd58 100644 --- a/.env.production +++ b/.env.production @@ -12,4 +12,7 @@ VUE_APP_LDAP_PWD = 'hhsxafTuUtVV' # upload -VUE_APP_UPLOAD = 'http://ad.kingsome.cn/interface/cos_upload' \ No newline at end of file +VUE_APP_UPLOAD = 'http://ad.kingsome.cn/interface/cos_upload' + +# area api +VUE_APP_MP = 'http://mp.kingsome.cn/api/open' \ No newline at end of file diff --git a/src/api/ad.js b/src/api/ad.js index 101849e..ac52001 100644 --- a/src/api/ad.js +++ b/src/api/ad.js @@ -1,6 +1,7 @@ // api文档: http://git.kingsome.cn/ops/promotion import request from '@/utils/request' +import requestMp from '@/utils/request-mp' // 获取广告位置信息 export function getAdPos(params) { @@ -48,3 +49,10 @@ export function delAd(data) { } +export function getAdAreaList() { + return requestMp({ + url: '/ad/get-area', + method: 'get', + }) +} + diff --git a/src/utils/request-mp.js b/src/utils/request-mp.js new file mode 100644 index 0000000..2b8c3c0 --- /dev/null +++ b/src/utils/request-mp.js @@ -0,0 +1,74 @@ +import axios from 'axios' +import {MessageBox, Message} from 'element-ui' +import store from '@/store' +import {getToken} from '@/utils/auth' +import {encoded, decoded} from '@/utils/cryptor' + +// create an axios instance +const service = axios.create({ + baseURL: process.env.VUE_APP_MP, // url = base url + request url + // withCredentials: true, // send cookies when cross-domain requests + timeout: 5000, // request timeout +}) + +// request interceptor +service.interceptors.request.use( + config => { + // do something before request is sent + const token = store.getters.token + const username = store.getters.username + + // if (decoded(token) !== username) { + // let each request carry token + // ['X-Token'] is a custom headers key + // please modify it according to the actual situation + // config.headers['X-Token'] = getToken() + // return Promise.reject('permission denied!') + // } + return config + }, + error => { + // do something with request error + console.log(error) // for debug + return Promise.reject(error) + } +) + +// response interceptor +service.interceptors.response.use( + /** + * If you want to get http information such as headers or status + * Please return response => response + */ + + /** + * Determine the request status by custom code + * Here is just an example + * You can also judge the status by HTTP Status Code + */ + response => { + const {data} = response + + if (data.errcode !== 0) { + Message({ + message: data.errmsg || 'error', + type: 'error', + duration: 5 * 1000, + }) + return Promise.reject(data.errmsg || 'error') + } else { + return response + } + }, + error => { + console.log('err' + error) // for debug + Message({ + message: error.message, + type: 'error', + duration: 5 * 1000, + }) + return Promise.reject(error) + } +) + +export default service diff --git a/src/views/ad/edit.vue b/src/views/ad/edit.vue index cbf61c5..05660df 100644 --- a/src/views/ad/edit.vue +++ b/src/views/ad/edit.vue @@ -219,9 +219,9 @@