lrj
1 天以前 7ad9c3c93f0cc103347ae2e2429e0122fb512e24
web/src/api/media.js
@@ -86,38 +86,19 @@
};
export const deleteMedia = async (id) => {
  console.log('=== deleteMedia API调用 ===');
  console.log('要删除的媒体ID:', id);
  console.log('GraphQL查询:', DELETE_MEDIA_MUTATION);
  try {
    const variables = { id: parseInt(id) };
  
  // 获取JWT token
  const { getToken } = await import('@/utils/auth');
  const token = getToken();
  const headers = { 'Content-Type': 'application/json' };
  if (token) {
    headers['Authorization'] = `Bearer ${token}`;
  }
    // 发送GraphQL请求
    const result = await graphqlRequest(DELETE_MEDIA_MUTATION, variables);
  
  const res = await fetch(GRAPHQL_ENDPOINT, {
    method: 'POST',
    headers: headers,
    body: JSON.stringify({
      query: DELETE_MEDIA_MUTATION,
      variables: { id: id.toString() }
    })
  });
  const result = await res.json();
  console.log('GraphQL响应:', result);
  console.log('deleteMedia结果:', result.data?.deleteMedia);
    // 检查返回结果
    const deleteResult = result.data?.deleteMedia;
  
  if (result.errors) {
    console.error('GraphQL错误:', result.errors);
    throw new Error(result.errors[0].message);
  }
  const deleteResult = result.data.deleteMedia;
  console.log('返回的删除结果:', deleteResult, '类型:', typeof deleteResult);
  return deleteResult;
  } catch (error) {
    throw new Error(`删除媒体失败: ${error.message}`);
  }
};
// 上传文件到服务器
@@ -152,17 +133,11 @@
  const { extractVideoFrame, generateThumbnailFileName } = await import('@/utils/video.js');
  
  try {
    console.log('开始处理视频文件:', videoFile.name);
    // 1. 上传原视频文件
    console.log('上传视频文件...');
    // 1. 上传视频文件
    const videoUploadResult = await uploadFile(videoFile);
    console.log('视频上传成功:', videoUploadResult);
    
    // 2. 提取视频第一帧
    console.log('提取视频第一帧...');
    const thumbnailBlob = await extractVideoFrame(videoFile);
    console.log('视频帧提取成功,大小:', thumbnailBlob.size);
    
    // 3. 创建缩略图文件对象
    const thumbnailFileName = generateThumbnailFileName(videoFile.name);
@@ -171,9 +146,7 @@
    });
    
    // 4. 上传缩略图
    console.log('上传缩略图...');
    const thumbnailUploadResult = await uploadFile(thumbnailFile);
    console.log('缩略图上传成功:', thumbnailUploadResult);
    
    // 5. 返回包含视频和缩略图信息的结果
    return {