fix: expired url

This commit is contained in:
zijiren233 2024-08-31 16:35:00 +08:00
parent 8dce4925a2
commit 6ebfa2e7e7
4 changed files with 9 additions and 55 deletions

12
package-lock.json generated
View File

@ -13,8 +13,6 @@
"animate.css": "^4.1.1",
"artplayer": "^5.1.7",
"artplayer-plugin-danmuku": "^5.1.4",
"artplayer-plugin-dash-quality": "^2.0.0",
"artplayer-plugin-hls-quality": "^2.0.0",
"axios": "^1.7.6",
"crypto-js": "^4.2.0",
"dashjs": "^4.7.4",
@ -1856,16 +1854,6 @@
"resolved": "https://registry.npmjs.org/artplayer-plugin-danmuku/-/artplayer-plugin-danmuku-5.1.4.tgz",
"integrity": "sha512-f2gJ9HsvSmOwg6UdNcWCUkSI6WmfkTiQKVDWr+pRJF9jQ2wK8c4YjNJ11SY63H5OGlaJBSvWWyNVdFHOX7pUbg=="
},
"node_modules/artplayer-plugin-dash-quality": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/artplayer-plugin-dash-quality/-/artplayer-plugin-dash-quality-2.0.0.tgz",
"integrity": "sha512-bQ1cGEX54O1s/9OVuFAHnV/zqDdOgM4uNPBzl3F1cqPUAxWzc1dfLt9OFTyEWCWyNBN9A5xjx7bRK4vevxcrdg=="
},
"node_modules/artplayer-plugin-hls-quality": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/artplayer-plugin-hls-quality/-/artplayer-plugin-hls-quality-2.0.0.tgz",
"integrity": "sha512-+/tiLXi2BNOuw7z2ayI6cYlZBZEP/ujS01bTtanRi2P0zl8wHafPEk0bAA8VbXxpP9gYT0/DjBIifNR9W0xqhA=="
},
"node_modules/async-validator": {
"version": "4.2.5",
"resolved": "https://registry.npmjs.org/async-validator/-/async-validator-4.2.5.tgz",

View File

@ -17,8 +17,6 @@
"animate.css": "^4.1.1",
"artplayer": "^5.1.7",
"artplayer-plugin-danmuku": "^5.1.4",
"artplayer-plugin-dash-quality": "^2.0.0",
"artplayer-plugin-hls-quality": "^2.0.0",
"axios": "^1.7.6",
"crypto-js": "^4.2.0",
"dashjs": "^4.7.4",
@ -60,5 +58,6 @@
"unplugin-vue-components": "^0.27.4",
"vite": "^5.4.2",
"vue-tsc": "^2.1.2"
}
},
"packageManager": "pnpm@8.9.0+sha512.ef8859938e1f0537b9fcf0309044311392f3b38b344176e6cd4fdee21b225524b0ac2a1b08ae2ae2ddd5b3ff4b8ca496d6778e950f3e7c9f555b81325982441c"
}

View File

@ -272,8 +272,8 @@ const mountPlayer = () => {
art.on("destroy", () => {
destroyOldCustomPlayLib(art);
});
Emits("get-instance", art);
addKeyEvnet(art);
Emits("get-instance", art);
};
//

View File

@ -8,7 +8,6 @@ import {
defineAsyncComponent,
nextTick
} from "vue";
import { currentMovieApi } from "@/services/apis/movie";
import type { WatchStopHandle } from "vue";
import { useWebSocket, useResizeObserver, useLocalStorage } from "@vueuse/core";
import { useRouteParams } from "@vueuse/router";
@ -232,39 +231,6 @@ const setPlayerStatus = (status: MovieStatus) => {
player.plugins["syncPlugin"].setAndNoPublishStatus(status);
};
const { state: currentMovie, execute: reqCurrentMovieApi } = currentMovieApi();
const switchCurrentMovie = async () => {
try {
await reqCurrentMovieApi({
headers: { Authorization: roomToken.value }
});
if (!currentMovie.value) return;
if (currentMovie.value.movie.base.url.startsWith("/")) {
currentMovie.value.movie.base.url = `${window.location.origin}${currentMovie.value.movie.base.url}`;
}
if (!player) return;
const currentExpireId = currentMovie.value.expireId;
const currentStatus = currentMovie.value.status;
room.currentExpireId = currentExpireId;
player.option.type = currentMovie.value.movie.base.type;
player.url = currentMovie.value.movie.base.url;
player.once("video:canplay", () => {
if (room.currentExpireId != currentExpireId) return;
setPlayerStatus(currentStatus);
});
} catch (err: any) {
console.log(err);
ElNotification({
title: "获取影片列表失败",
message: err.response.data.error || err.message,
type: "error"
});
}
};
const handleElementMessage = (msg: ElementMessage) => {
console.log(`-----Ws Message Start-----`);
console.log(msg);
@ -330,16 +296,17 @@ const handleElementMessage = (msg: ElementMessage) => {
}
//
case ElementMessageType.CURRENT_EXPIRED: {
ElNotification({
title: "链接过期,刷新中",
type: "info"
});
}
case ElementMessageType.CURRENT_CHANGED: {
getCurrentMovie();
break;
}
case ElementMessageType.CURRENT_EXPIRED: {
switchCurrentMovie();
break;
}
//
case ElementMessageType.MOVIES_CHANGED: {
getMovies(