diff --git a/src/pages/PublishSeed/PublishSeed.jsx b/src/pages/PublishSeed/PublishSeed.jsx
index 6528b0d..2f5bddb 100644
--- a/src/pages/PublishSeed/PublishSeed.jsx
+++ b/src/pages/PublishSeed/PublishSeed.jsx
@@ -92,25 +92,31 @@
       formData.append('coverImage', imageFile);
     }
 
-    try {
+        try {
       console.log('[DEBUG] 发送上传请求...');
-      const response = await axios.post('/seeds/upload', formData, {
-        // axios 会自动处理 multipart/form-data Content-Type 边界，不用手动设置
-        // headers: { 'Content-Type': 'multipart/form-data' },
-      });
+      const response = await axios.post('/seeds/upload', formData);
+
       console.log('[DEBUG] 请求成功，响应:', response.data);
 
       if (response.data.code === 0) {
         setMessage('种子上传成功');
+      } else if (response.data.code === 401) {
+        setMessage('未登录或登录已过期，请重新登录');
       } else {
         setMessage(response.data.message || '上传失败，请稍后再试');
       }
     } catch (error) {
       console.error('[handleSubmit] 上传失败:', error);
-      setMessage('上传失败，发生了错误');
+
+      if (error.response?.status === 401 || error.response?.data?.code === 401) {
+        setMessage('未登录或登录已过期，请重新登录');
+      } else {
+        setMessage(error.response?.data?.msg || '上传失败，发生了错误');
+      }
     } finally {
       setIsLoading(false);
     }
+
   };
 
   return (
