|
@@ -3,7 +3,65 @@
|
|
|
* Copyright (c) 2019 ruoyi
|
|
|
*/
|
|
|
|
|
|
-const baseURL = window.location.href.split('://')[0]+'://' + process.env.VUE_APP_BASE_API
|
|
|
+// 判断当前用户网络 外网/内网 返回接口地址
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+export function judgmentNetworkReturnAddress() {
|
|
|
+ /*判断是否是内网IP*/
|
|
|
+ // 获取当前页面url
|
|
|
+ var curPageUrl = window.location.href;
|
|
|
+ // console.log('curPageUrl-0 '+curPageUrl);
|
|
|
+
|
|
|
+ var reg1 = /(http|ftp|https|www):\/\//g;//去掉前缀
|
|
|
+ curPageUrl =curPageUrl.replace(reg1,'');
|
|
|
+ // console.log('curPageUrl-1 '+curPageUrl);
|
|
|
+
|
|
|
+ var reg2 = /\:+/g;//替换冒号为一点
|
|
|
+ curPageUrl =curPageUrl.replace(reg2,'.');
|
|
|
+ // console.log('curPageUrl-2 '+curPageUrl);
|
|
|
+
|
|
|
+ curPageUrl = curPageUrl.split('.');//通过一点来划分数组
|
|
|
+ // console.log(curPageUrl);
|
|
|
+
|
|
|
+
|
|
|
+ var ipAddress = curPageUrl[0]+'.'+curPageUrl[1]+'.'+curPageUrl[2]+'.'+curPageUrl[3];
|
|
|
+
|
|
|
+ var isInnerIp = false;//默认给定IP不是内网IP
|
|
|
+ var ipNum = getIpNum(ipAddress);
|
|
|
+ /**
|
|
|
+ * 私有IP:A类 10.0.0.0 -10.255.255.255
|
|
|
+ * B类 172.16.0.0 -172.31.255.255
|
|
|
+ * C类 192.168.0.0 -192.168.255.255
|
|
|
+ * D类 127.0.0.0 -127.255.255.255(环回地址)
|
|
|
+ **/
|
|
|
+ var aBegin = getIpNum("10.0.0.0");
|
|
|
+ var aEnd = getIpNum("10.255.255.255");
|
|
|
+ var bBegin = getIpNum("172.16.0.0");
|
|
|
+ var bEnd = getIpNum("172.31.255.255");
|
|
|
+ var cBegin = getIpNum("192.168.0.0");
|
|
|
+ var cEnd = getIpNum("192.168.255.255");
|
|
|
+ var dBegin = getIpNum("127.0.0.0");
|
|
|
+ var dEnd = getIpNum("127.255.255.255");
|
|
|
+ isInnerIp = isInner(ipNum,aBegin,aEnd) || isInner(ipNum,bBegin,bEnd) || isInner(ipNum,cBegin,cEnd) || isInner(ipNum,dBegin,dEnd);
|
|
|
+ // console.log('是否是内网:'+isInnerIp);
|
|
|
+ return isInnerIp?process.env.VUE_APP_BASE_LOCAL_API:process.env.VUE_APP_BASE_API;
|
|
|
+ /*获取IP数*/
|
|
|
+ function getIpNum(ipAddress) {
|
|
|
+ var ip = ipAddress.split(".");
|
|
|
+ var a = parseInt(ip[0]);
|
|
|
+ var b = parseInt(ip[1]);
|
|
|
+ var c = parseInt(ip[2]);
|
|
|
+ var d = parseInt(ip[3]);
|
|
|
+ var ipNum = a * 256 * 256 * 256 + b * 256 * 256 + c * 256 + d;
|
|
|
+ return ipNum;
|
|
|
+ }
|
|
|
+ function isInner(userIp,begin,end){
|
|
|
+ return (userIp>=begin) && (userIp<=end);
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+const baseURL = window.location.href.split('://')[0]+'://' + judgmentNetworkReturnAddress()
|
|
|
|
|
|
// 日期格式化
|
|
|
export function parseTime(time, pattern) {
|
|
@@ -268,7 +326,7 @@ export function urlJudge(url) {
|
|
|
// let text = window.location.href.split('://')[0]+'://' + url.split('://')[1]
|
|
|
// src = localStorage.getItem('filePreviewUrl') + '/onlinePreview?url='+encodeURIComponent(btoa(unescape(encodeURIComponent(text))));
|
|
|
// }else{
|
|
|
- // src = localStorage.getItem('filePreviewUrl') + '/onlinePreview?url='+encodeURIComponent(btoa(unescape(encodeURIComponent(window.location.href.split('://')[0]+'://' +process.env.VUE_APP_BASE_API +'/admin/'+ url))));
|
|
|
+ // src = localStorage.getItem('filePreviewUrl') + '/onlinePreview?url='+encodeURIComponent(btoa(unescape(encodeURIComponent(window.location.href.split('://')[0]+'://' +judgmentNetworkReturnAddress() +'/admin/'+ url))));
|
|
|
// }
|
|
|
return location + url
|
|
|
}
|