修复获取验证码及错误码跳转处理

This commit is contained in:
junleea 2024-06-14 11:15:51 +08:00
parent 595a4feb26
commit 3ad4f9c04e
4 changed files with 49 additions and 54 deletions

View File

@ -11,15 +11,16 @@ request.interceptors.response.use(
if(result.status!==200 ){
router.push("/login")
}
if(result.data.message==="NOT_LOGIN" || result.data.message.includes("The Token has expired on") || result.data.code ===3 ||result.data.code ===4){
if(result.data.message==="NOT_LOGIN"||result.data.code==2 || result.data.code ===3 ||result.data.code ===4){
alert("登录失效,请重新登录!")
localStorage.removeItem("token");
router.push("/login")
return
}
if(result.data.code===0){
return result.data;
if(result.data.code == 1){
alert("请求失败,请稍后重试!");
}else{
alert(result.data.message ? result.data.message : "请求失败,请稍后重试!");
router.push("/login");
return result.data
}
},
error => {

View File

@ -42,7 +42,7 @@ export default {
// }
// console.log(this.tableData);
this.tableData=data;
this.tableData = data;
},
onSubmit() {
getDeviceList({ token: token });
@ -138,22 +138,18 @@ export default {
<template>
<div>
<el-menu
default-active="2"
class="el-menu-vertical-demo"
background-color="#545c64"
text-color="#fff"
active-text-color="#ffd04b"
mode="vertical"
@select="handleMenuSelect"
<el-button
type="primary"
size="mini"
@click.prevent="handleMenuSelect('/videoList')"
>视频列表</el-button
>
<el-button
type="primary"
size="mini"
@click.prevent="handleMenuSelect('/device')"
>设备管理</el-button
>
<el-menu-item index="/videoList">
<template>视频列表</template>
</el-menu-item>
<el-menu-item index="/device">
<template>设备管理</template>
</el-menu-item>
</el-menu>
<el-container style="height: 700px; border: 1px solid #eee">
<el-header style="font-size: 40px; background-color: rgb(238, 241, 246)"
>监控设备列表</el-header
@ -163,13 +159,20 @@ export default {
<!-- 表单 -->
<el-form :inline="true" :model="tokenData" class="demo-form-inline">
<el-form-item>
<el-button class="el-button--danger" type="primary" @click="getDeviceList()">查询</el-button>
<el-button
class="el-button--danger"
type="primary"
@click="getDeviceList()"
>查询</el-button
>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="logout()">退出登录</el-button>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="toVideoList()">返回监控视频</el-button>
<el-button type="primary" @click="toVideoList()"
>返回监控视频</el-button
>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="restartAllDevice('all')"

View File

@ -170,7 +170,7 @@ const startInterval = () => {
//
return;
}
intervalId.value = setInterval(getQRStatus, 1000);
intervalId.value = setInterval(getQRStatus, 2000);
};
//
@ -240,7 +240,7 @@ const generateQRCode = () => {
const getUUID = async () => {
try {
const response = await getUUIDService({ device: "windows" });
const response = await getUUIDService({ device: "windows" ,"address": localStorage.getItem("address"),"ip": localStorage.getItem("ip")});
uuid = response.data.toString();
let uid = uuid.toString();
//await creatQrCode(uid);
@ -273,10 +273,11 @@ const getQRStatus = async () => {
const getIpClient = async () => {
try {
const response = await axios.get("https://ipinfo.io/json");
loginData.value.ip = response.data.ip;
localStorage.setItem("ip", response.data.ip);
localStorage.setItem("city", response.data.city);
const response = await axios.get("https://ip.zxinc.org/api.php?type=json");
loginData.value.ip = response.data.data.myip;
localStorage.setItem("ip", response.data.data.myip);
localStorage.setItem("city", response.data.data.country);
localStorage.setItem("address", response.data.data.location);
// console.log("ip:",response.data.ip);
// console.log("login ip:",loginData.ip);
// console.log(response.data);
@ -287,7 +288,7 @@ const getIpClient = async () => {
};
const init = async () => {
getIpClient();
getUUID();
await getUUID();
};
const register = async () => {
let result = registerService(registerData.value);

View File

@ -210,22 +210,12 @@ export default {
<template>
<div>
<el-menu
default-active="2"
class="el-menu-vertical-demo"
background-color="#545c64"
text-color="#fff"
active-text-color="#ffd04b"
mode="vertical"
@select="handleMenuSelect"
<el-button type="primary" size="mini" @click.prevent="handleMenuSelect('/videoList')"
>视频列表</el-button
>
<el-button type="primary" size="mini" @click.prevent="handleMenuSelect('/device')"
>设备管理</el-button
>
<el-menu-item index="/videoList">
<template>视频列表</template>
</el-menu-item>
<el-menu-item index="/device">
<template>设备管理</template>
</el-menu-item>
</el-menu>
<el-container style="height: 700px; border: 1px solid #eee">
<el-header style="font-size: 40px; background-color: rgb(238, 241, 246)"
>监控视频列表</el-header