fix 飞牛影视无法显示图片

图片接口增加Cookies参数
This commit is contained in:
景大侠
2025-11-04 11:32:41 +08:00
parent ad963d718d
commit 5032f0e6a9
4 changed files with 26 additions and 8 deletions

View File

@@ -992,6 +992,8 @@ export interface MediaServerPlayItem {
percent?: number
// 媒体服务器类型
server_type?: string
// 飞牛的图片需要Cookies
cookies?: string
}
// 媒体服务器媒体库
@@ -1014,6 +1016,8 @@ export interface MediaServerLibrary {
link?: string
// 媒体服务器类型
server_type?: string
// 飞牛的图片需要Cookies
cookies?: string
}
// 消息通知

View File

@@ -26,7 +26,11 @@ async function goPlay() {
// 计算图片地址
const getImgUrl = computed(() => {
const image = props.media?.image || ''
return `${import.meta.env.VITE_API_BASE_URL}system/img/0?imgurl=${encodeURIComponent(image)}`
let url = `${import.meta.env.VITE_API_BASE_URL}system/img/0?imgurl=${encodeURIComponent(image)}`
const cookies = props.media?.cookies
if (cookies)
url += `&cookies=${encodeURIComponent(cookies)}`
return url
})
</script>

View File

@@ -52,20 +52,26 @@ async function goPlay() {
}
// 生成图片代理路径
function getImgUrl(url: string) {
function getImgUrl(url: string, cookies?: string) {
if (!url) return getDefaultImage()
else return `${import.meta.env.VITE_API_BASE_URL}system/img/0?imgurl=${encodeURIComponent(url)}`
let imgurl = `${import.meta.env.VITE_API_BASE_URL}system/img/0?imgurl=${encodeURIComponent(url)}`
if (cookies)
imgurl += `&cookies=${encodeURIComponent(cookies)}`
return imgurl
}
// 根据多张图片生成媒体库封面
async function drawImages(imageList: string[]) {
async function drawImages(imageList: string[], cookies?: string) {
// 图片
const IMAGES = imageList
if (IMAGES.length === 0) return getDefaultImage()
// 为所有图片添加system/img前缀
for (let i = 0; i < IMAGES.length; i++)
for (let i = 0; i < IMAGES.length; i++) {
IMAGES[i] = `${import.meta.env.VITE_API_BASE_URL}system/img/0?imgurl=${encodeURIComponent(IMAGES[i])}`
if (cookies)
IMAGES[i] += `&cookies=${encodeURIComponent(cookies)}`
}
// canvas
const canvas = canvasRef.value
@@ -137,8 +143,8 @@ async function drawImages(imageList: string[]) {
onMounted(async () => {
if (props.media?.image_list && props.media?.image_list.length > 0)
imgUrl.value = await drawImages(props.media?.image_list || [])
else imgUrl.value = getImgUrl(props.media?.image || '')
imgUrl.value = await drawImages(props.media?.image_list || [], props.media?.cookies)
else imgUrl.value = getImgUrl(props.media?.image || '', props.media?.cookies)
})
</script>

View File

@@ -28,7 +28,11 @@ function getChipColor(type: string) {
const getImgUrl = computed(() => {
if (imageLoadError.value) return noImage
const image = props.media?.image || ''
return `${import.meta.env.VITE_API_BASE_URL}system/img/0?imgurl=${encodeURIComponent(image)}`
let url = `${import.meta.env.VITE_API_BASE_URL}system/img/0?imgurl=${encodeURIComponent(image)}`
const cookies = props.media?.cookies
if (cookies)
url += `&cookies=${encodeURIComponent(cookies)}`
return url
})
// 跳转播放