浏览代码

Merge branch 'fix_ht_0102' into debug_ht

yujinwen 2 月之前
父节点
当前提交
da7745bc12
共有 3 个文件被更改,包括 29 次插入6 次删除
  1. 4 0
      src/api/system/user.js
  2. 19 0
      src/router/index.js
  3. 6 6
      src/views/media/components/MediaUpload.vue

+ 4 - 0
src/api/system/user.js

@@ -41,6 +41,10 @@ export default {
   // 系统用户修改密码
   modifyPwd:params=>{
     return post('/sys_user/reset_my_pass',params)
+  },
+  // 用户token检测
+  checkUserToken:()=>{
+    return post('/user/optional',{})
   }
 
   

+ 19 - 0
src/router/index.js

@@ -1,4 +1,5 @@
 import { createRouter, createWebHistory } from "vue-router";
+import {apiSystemUser} from '@/api/system'
 
 //all routes
 const appAllRoutes = [];
@@ -45,5 +46,23 @@ const router = createRouter({
   routes,
 });
 
+const checkTokenPageWhiteArr=['/404','/login','/temppage']
+router.beforeEach(async (to, from, next) => {
+  // to and from are Route Object,next() must be called to resolve the hook
+  // 进入每个页面前校验用户token
+  try {
+    if(checkTokenPageWhiteArr.includes(to.path)) return next()
+    const res=await apiSystemUser.checkUserToken()
+    if(res.Ret!==200) {
+      next('/login')
+      return
+    }
+    next()
+  } catch (error) {
+    next('/login')
+  }
+  
+})
+
 
 export default router;

+ 6 - 6
src/views/media/components/MediaUpload.vue

@@ -42,14 +42,14 @@ const dialogTitle = computed(()=>{
     return {'add':'上传','edit':'编辑',}[props.modifyType]+mediaName.value
 })
 const uploadAccept = computed(()=>{
-    return props.mediaType==='audio'?'.mp3,.m4a':'.mp4'
+    return props.mediaType==='audio'?'.mp3':'.mp4'
 })
 const uploadType = computed(()=>{
     return props.mediaType==='audio'?'audio/mpeg':'video/mp4'
 })
-const uploadAudioType = computed(()=>{
-    return props.mediaType==='audio'?'audio/x-m4a':'video/mp4'
-})
+// const uploadAudioType = computed(()=>{
+//     return props.mediaType==='audio'?'audio/mpeg':'video/mp4'
+// })
 const mediaData = reactive({
     fileUrl:'',
     mediaName:'',
@@ -110,7 +110,7 @@ function handleUpload(){
 async function handleUploadMedia(file){
     uploadLoading.value = true
     const {type} = file.file
-    if(type!==uploadType.value && type!==uploadAudioType.value){
+    if(type!==uploadType.value){
         ElMessage.warning(`仅支持${uploadAccept.value}格式的文件`)
         uploadLoading.value = false
         return 
@@ -210,7 +210,7 @@ function handleUploadImg(file){
         <div class="content-wrap">
             <el-form label-width="95px" label-position="left" :model="mediaData" :rules="rules" ref="formRef">
                 <el-form-item prop="fileUrl" class="upload-form-item">
-                    <el-input :placeholder="props.mediaType==='audio'?'音频格式限制mp3、m4a':'视频格式限制mp4,编码器为H.264'" v-model="mediaData.fileUrl" disabled>
+                    <el-input :placeholder="props.mediaType==='audio'?'音频格式限制mp3':'视频格式限制mp4,编码器为H.264'" v-model="mediaData.fileUrl" disabled>
                         <template #append>
                             <el-button 
                                 :loading="uploadLoading"