|
|
|
import Axios from 'axios'
|
|
|
|
import VueCookies from 'vue-cookies'
|
|
|
|
import router from "../router";
|
|
|
|
const https = require('https');
|
|
|
|
const Base64 = require('js-base64').Base64;
|
|
|
|
Axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
|
|
|
|
Axios.defaults.withCredentials = true;
|
|
|
|
Axios.defaults.httpsAgent = new https.Agent({
|
|
|
|
keepAlive: true
|
|
|
|
});
|
|
|
|
|
|
|
|
// Axios.defaults.baseURL='';
|
|
|
|
const USERSEVER = 'https://fly.dvcloud.xin/api/v1/fir/server';
|
|
|
|
|
|
|
|
// const USERSEVER = 'http://192.168.1.112:8000/api/v1/fir/server';
|
|
|
|
|
|
|
|
|
|
|
|
export function set_auth_token() {
|
|
|
|
Axios.interceptors.request.use(function (config) {
|
|
|
|
// 在发送请求之前做些什么
|
|
|
|
|
|
|
|
if (VueCookies.get('token')) {
|
|
|
|
// Axios.defaults.headers.common['Authorization'] = localStorage.getItem('access_token');
|
|
|
|
// console.log(config.headers);
|
|
|
|
if (VueCookies.get('auth_token')) {
|
|
|
|
config.headers.Authorization = VueCookies.get('auth_token')
|
|
|
|
} else {
|
|
|
|
let token = VueCookies.get('token');
|
|
|
|
let username = VueCookies.get('username');
|
|
|
|
VueCookies.set("auth_token", Base64.encode(token + ':' + username));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// 更改加载的样式
|
|
|
|
|
|
|
|
return config;
|
|
|
|
}, function (error) {
|
|
|
|
// 对请求错误做些什么
|
|
|
|
return Promise.reject(error);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
set_auth_token();
|
|
|
|
|
|
|
|
function getData(methods = true, url, params = {}, callBack, load, isCode = false) {
|
|
|
|
|
|
|
|
if (methods === "DELETE") {
|
|
|
|
Axios
|
|
|
|
.delete(url, {params:params})
|
|
|
|
.then(function (response) {
|
|
|
|
if (isCode) {
|
|
|
|
callBack(response.data);
|
|
|
|
} else {
|
|
|
|
callBack(response.data.data);
|
|
|
|
}
|
|
|
|
})
|
|
|
|
.catch(function (error) {
|
|
|
|
|
|
|
|
if (error && error.response) {
|
|
|
|
switch (error.response.status) {
|
|
|
|
case 400:
|
|
|
|
error.message = '请求错误(400)';
|
|
|
|
break;
|
|
|
|
case 401:
|
|
|
|
error.message = '未授权,请重新登录(401)';
|
|
|
|
break;
|
|
|
|
case 403:
|
|
|
|
error.message = '拒绝访问(403)';
|
|
|
|
break;
|
|
|
|
case 404:
|
|
|
|
error.message = '请求出错(404)';
|
|
|
|
break;
|
|
|
|
case 408:
|
|
|
|
error.message = '请求超时(408)';
|
|
|
|
break;
|
|
|
|
case 500:
|
|
|
|
error.message = '服务器错误(500)';
|
|
|
|
break;
|
|
|
|
case 501:
|
|
|
|
error.message = '服务未实现(501)';
|
|
|
|
break;
|
|
|
|
case 502:
|
|
|
|
error.message = '网络错误(502)';
|
|
|
|
break;
|
|
|
|
case 503:
|
|
|
|
error.message = '服务不可用(503)';
|
|
|
|
break;
|
|
|
|
case 504:
|
|
|
|
error.message = '网络超时(504)';
|
|
|
|
break;
|
|
|
|
case 505:
|
|
|
|
error.message = 'HTTP版本不受支持(505)';
|
|
|
|
break;
|
|
|
|
default:
|
|
|
|
error.message = `连接出错(${error.response.status})!`;
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
error.message = '连接服务器失败!';
|
|
|
|
}
|
|
|
|
if (error.message === 'Network Error') {
|
|
|
|
alert('网络连接失败');
|
|
|
|
} else {
|
|
|
|
alert(error)
|
|
|
|
}
|
|
|
|
callBack(null);
|
|
|
|
});
|
|
|
|
|
|
|
|
}
|
|
|
|
else if (methods === "PUT") {
|
|
|
|
Axios
|
|
|
|
.put(url, params)
|
|
|
|
.then(function (response) {
|
|
|
|
if (isCode) {
|
|
|
|
callBack(response.data);
|
|
|
|
} else {
|
|
|
|
callBack(response.data.data);
|
|
|
|
}
|
|
|
|
})
|
|
|
|
.catch(function (error) {
|
|
|
|
// eslint-disable-next-line no-console
|
|
|
|
console.log(error, error.response);
|
|
|
|
|
|
|
|
callBack(null);
|
|
|
|
});
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
else if (methods === 'POST') {
|
|
|
|
Axios
|
|
|
|
.post(url, params)
|
|
|
|
.then(function (response) {
|
|
|
|
if (isCode) {
|
|
|
|
callBack(response.data);
|
|
|
|
} else {
|
|
|
|
callBack(response.data.data);
|
|
|
|
}
|
|
|
|
|
|
|
|
})
|
|
|
|
.catch(function (error) {
|
|
|
|
// eslint-disable-next-line no-console
|
|
|
|
console.log(error, error.response);
|
|
|
|
callBack(null);
|
|
|
|
});
|
|
|
|
} else {
|
|
|
|
Axios
|
|
|
|
.get(url, {params: params})
|
|
|
|
.then(function (response) {
|
|
|
|
callBack(response.data);
|
|
|
|
})
|
|
|
|
.catch(function (error) {
|
|
|
|
// eslint-disable-next-line no-console
|
|
|
|
console.log(error, error.response);
|
|
|
|
if(error.response && error.response.status === 403){
|
|
|
|
router.push({name: 'FirLogin'});
|
|
|
|
}
|
|
|
|
callBack(null);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/**用户登录 */
|
|
|
|
export function loginFun(callBack, params, load = true) {
|
|
|
|
getData(
|
|
|
|
'POST',
|
|
|
|
USERSEVER + '/login',
|
|
|
|
params,
|
|
|
|
data => {
|
|
|
|
callBack(data);
|
|
|
|
},
|
|
|
|
load,
|
|
|
|
true,
|
|
|
|
true
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**用户退出 */
|
|
|
|
export function logout(callBack, params, load = true) {
|
|
|
|
getData(
|
|
|
|
'DELETE',
|
|
|
|
USERSEVER + '/logout',
|
|
|
|
params,
|
|
|
|
data => {
|
|
|
|
callBack(data);
|
|
|
|
},
|
|
|
|
load,
|
|
|
|
true,
|
|
|
|
true
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**用户应用列表 */
|
|
|
|
export function getapps(callBack, params, load = true) {
|
|
|
|
getData(
|
|
|
|
'GET',
|
|
|
|
USERSEVER + '/apps',
|
|
|
|
params,
|
|
|
|
data => {
|
|
|
|
callBack(data);
|
|
|
|
},
|
|
|
|
load,
|
|
|
|
true,
|
|
|
|
true
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**用户应用详情 */
|
|
|
|
export function getappinfos(callBack, params, load = true) {
|
|
|
|
getData(
|
|
|
|
'GET',
|
|
|
|
USERSEVER + '/apps/' + params.app_id,
|
|
|
|
{},
|
|
|
|
data => {
|
|
|
|
callBack(data);
|
|
|
|
},
|
|
|
|
load,
|
|
|
|
true,
|
|
|
|
true
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**删除应用 */
|
|
|
|
export function deleteapp(callBack, params, load = true) {
|
|
|
|
getData(
|
|
|
|
"DELETE",
|
|
|
|
USERSEVER + '/apps/' + params.app_id,
|
|
|
|
{},
|
|
|
|
data => {
|
|
|
|
callBack(data);
|
|
|
|
},
|
|
|
|
load,
|
|
|
|
true,
|
|
|
|
true
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**删除release应用 */
|
|
|
|
export function deletereleaseapp(callBack, params, load = true) {
|
|
|
|
getData(
|
|
|
|
"DELETE",
|
|
|
|
USERSEVER + '/appinfos/' + params.app_id + '/' + params.release_id,
|
|
|
|
{},
|
|
|
|
data => {
|
|
|
|
callBack(data);
|
|
|
|
},
|
|
|
|
load,
|
|
|
|
true,
|
|
|
|
true
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**更新app应用 */
|
|
|
|
export function updateapp(callBack, params, load = true) {
|
|
|
|
getData(
|
|
|
|
"PUT",
|
|
|
|
USERSEVER + '/apps/' + params.app_id,
|
|
|
|
params.data,
|
|
|
|
data => {
|
|
|
|
callBack(data);
|
|
|
|
},
|
|
|
|
load,
|
|
|
|
true,
|
|
|
|
true
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**更新release应用 */
|
|
|
|
export function updatereleaseapp(callBack, params, load = true) {
|
|
|
|
getData(
|
|
|
|
"PUT",
|
|
|
|
USERSEVER + '/appinfos/' + params.app_id + '/' + params.release_id,
|
|
|
|
params.data,
|
|
|
|
data => {
|
|
|
|
callBack(data);
|
|
|
|
},
|
|
|
|
load,
|
|
|
|
true,
|
|
|
|
true
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**用户应用详情 */
|
|
|
|
export function getapptimeline(callBack, params, load = true) {
|
|
|
|
getData(
|
|
|
|
'GET',
|
|
|
|
USERSEVER + '/appinfos/' + params.app_id + '/' + params.action,
|
|
|
|
{},
|
|
|
|
data => {
|
|
|
|
callBack(data);
|
|
|
|
},
|
|
|
|
load,
|
|
|
|
true,
|
|
|
|
true
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**根据短链接获取应用信息 */
|
|
|
|
export function getShortAppinfo(callBack, params, load = true) {
|
|
|
|
getData(
|
|
|
|
'GET',
|
|
|
|
USERSEVER + '/short/' + params.short ,
|
|
|
|
params,
|
|
|
|
data => {
|
|
|
|
callBack(data);
|
|
|
|
},
|
|
|
|
load,
|
|
|
|
true,
|
|
|
|
true
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**用户app存储配置 */
|
|
|
|
export function getStorageinfo(callBack, params, load = true) {
|
|
|
|
getData(
|
|
|
|
params.methods,
|
|
|
|
USERSEVER + '/storage' ,
|
|
|
|
params.data,
|
|
|
|
data => {
|
|
|
|
callBack(data);
|
|
|
|
},
|
|
|
|
load,
|
|
|
|
true,
|
|
|
|
true
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**用户个人信息 */
|
|
|
|
export function userinfos(callBack, params, load = true) {
|
|
|
|
getData(
|
|
|
|
params.methods,
|
|
|
|
USERSEVER + '/userinfo',
|
|
|
|
params.data,
|
|
|
|
data => {
|
|
|
|
callBack(data);
|
|
|
|
},
|
|
|
|
load,
|
|
|
|
true,
|
|
|
|
true
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
export function getuserpicurl() {
|
|
|
|
return USERSEVER+ '/userinfo'
|
|
|
|
}
|
|
|
|
export function getapppicurl(app_id) {
|
|
|
|
return USERSEVER + '/apps/' + app_id
|
|
|
|
}
|
|
|
|
|
|
|
|
export function getuploadurl() {
|
|
|
|
return USERSEVER + '/upload'
|
|
|
|
}
|
|
|
|
export function getplisturl() {
|
|
|
|
return USERSEVER + '/download'
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**分析应用并获取app上传token */
|
|
|
|
export function analyseApps(callBack, params, load = true) {
|
|
|
|
getData(
|
|
|
|
params.methods,
|
|
|
|
USERSEVER + '/analyse' ,
|
|
|
|
params.data,
|
|
|
|
data => {
|
|
|
|
callBack(data);
|
|
|
|
},
|
|
|
|
load,
|
|
|
|
true,
|
|
|
|
true
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**获取下载的url */
|
|
|
|
export function getdownloadurl(callBack, params, load = true) {
|
|
|
|
getData(
|
|
|
|
'GET',
|
|
|
|
USERSEVER + '/install/'+params.app_id ,
|
|
|
|
params.data,
|
|
|
|
data => {
|
|
|
|
callBack(data);
|
|
|
|
},
|
|
|
|
load,
|
|
|
|
true,
|
|
|
|
true
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**上传文件到服务器 */
|
|
|
|
export function uploadstorage(certinfo,file,successCallback,processCallback) {
|
|
|
|
|
|
|
|
let config = {
|
|
|
|
onUploadProgress: function (progressEvent) {
|
|
|
|
let total=progressEvent.total;
|
|
|
|
let loaded = progressEvent.loaded;
|
|
|
|
processCallback(Math.round(loaded*100/total))
|
|
|
|
},
|
|
|
|
headers: {
|
|
|
|
'Content-Type': 'multipart/form-data',
|
|
|
|
'Authorization':VueCookies.get('auth_token'),
|
|
|
|
},
|
|
|
|
};
|
|
|
|
const data = new FormData();
|
|
|
|
data.append('file', file);
|
|
|
|
data.append('certinfo',JSON.stringify(certinfo));
|
|
|
|
Axios.post(certinfo.upload_url, data, config).then(res => {
|
|
|
|
// eslint-disable-next-line no-console
|
|
|
|
console.log(res);
|
|
|
|
successCallback(res)
|
|
|
|
}).catch(err => {
|
|
|
|
// eslint-disable-next-line no-console
|
|
|
|
console.log(err);
|
|
|
|
});
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
/**获取文件上传token */
|
|
|
|
export function uploadimgs(callBack, params, load = true) {
|
|
|
|
getData(
|
|
|
|
params.methods,
|
|
|
|
USERSEVER + '/upload',
|
|
|
|
params.data,
|
|
|
|
data => {
|
|
|
|
callBack(data);
|
|
|
|
},
|
|
|
|
load,
|
|
|
|
true,
|
|
|
|
true
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|