diff --git a/src/components/Dashboard.jsx b/src/components/Dashboard.jsx
index 40bd19d..61111f3 100644
--- a/src/components/Dashboard.jsx
+++ b/src/components/Dashboard.jsx
@@ -7,8 +7,10 @@
 import { message } from 'antd'; // 用于显示提示消息
 import { getAnnouncements,getLatestAnnouncements,getAnnouncementDetail } from '../api/announcement'; 
 import { getAllDiscounts } from '../api/administer'; 
-   import { getUserInfo, isAdmin } from '../api/auth';
+import { getUserInfo, isAdmin } from '../api/auth';
 import { api } from '../api/auth'; 
+import { getRecommendations, markRecommendationShown, markRecommendationClicked } from '../api/recommend';
+
 
 
 const Dashboard = ({onLogout}) => {
@@ -67,6 +69,10 @@
     const [shareSearch, setShareSearch] = useState('');
     const [requestSearch, setRequestSearch] = useState('');
     const [helpSearch, setHelpSearch] = useState('');
+    const [recommendations, setRecommendations] = useState([]);
+    const [recommendLoading, setRecommendLoading] = useState(false);
+    const [recommendError, setRecommendError] = useState(null);
+
 
 
     const activeTab = tab || 'announcement'; // 如果没有tab参数，则默认为announcement
@@ -99,6 +105,7 @@
         if (activeTab === 'announcement') {
             fetchAnnouncements();
             fetchDiscountsForCarousel();
+            fetchRecommendations();
         }
     }, [activeTab]);
 
@@ -143,6 +150,23 @@
         }
     };
 
+    const handleRecommendClick = async (torrent) => {
+        try {
+            // 标记为已点击
+            await markRecommendationClicked(torrent.id);
+            
+            // 导航到种子详情页
+            navigate(`/torrent/${torrent.id}`, {
+            state: {
+                fromTab: 'announcement',
+                scrollPosition: window.scrollY
+            }
+            });
+        } catch (error) {
+            console.error('标记推荐点击失败:', error);
+        }
+    };
+
     
    // 公告区搜索处理
     const handleSearchAnnouncement = (e) => {
@@ -515,7 +539,7 @@
         
         const response = (shareSearch && !isReset) 
             ? await searchTorrents(shareSearch, page)
-            : await api.get('http://localhost:8088/torrent', { params });
+            : await api.get('/torrent', { params });
             
         if (response.data.code === 200) {
             setTorrentPosts(response.data.data.records);
@@ -614,7 +638,26 @@
         } finally {
           setHelpLoading(false);
         }
-      };
+    };
+
+    const fetchRecommendations = async () => {
+        try {
+            setRecommendLoading(true);
+            const response = await getRecommendations(5);
+            if (response.code === 200) {
+            setRecommendations(response.data || []);
+            
+            // 标记这些推荐为已显示
+            response.data.forEach(torrent => {
+                markRecommendationShown(torrent.id);
+            });
+            }
+        } catch (error) {
+            setRecommendError(error.message || '获取推荐失败');
+        } finally {
+            setRecommendLoading(false);
+        }
+    };
 
 
     useEffect(() => {
@@ -719,7 +762,7 @@
             }
             
             // 调用API获取筛选结果
-            const response = await api.get('http://localhost:8088/torrent', { params });
+            const response = await api.get('/torrent', { params });
             
             if (response.data.code === 200) {
                 setTorrentPosts(response.data.data.records);
@@ -857,6 +900,45 @@
                                 </div>
                             ))}
                         </div>
+                        {/* 新增的为你推荐区域 */}
+                        <div className="recommend-section">
+                            <h2 className="section-title">为你推荐</h2>
+                            
+                            {recommendLoading && <div className="loading">加载推荐中...</div>}
+                            {recommendError && <div className="error">{recommendError}</div>}
+                            
+                            <div className="recommend-grid">
+                            {recommendations.map(torrent => (
+                                <div 
+                                key={torrent.id}
+                                className="recommend-card"
+                                onClick={() => handleRecommendClick(torrent)}
+                                >
+                                <div className="card-poster">
+                                    <div className="poster-image gray-bg">
+                                    {torrent.torrentName.charAt(0)}
+                                    </div>
+                                </div>
+                                <div className="card-info">
+                                    <h3 className="card-title">{torrent.torrentName}</h3>
+                                    <p className="card-meta">
+                                    {torrent.resolution} | {torrent.region} | {torrent.category}
+                                    </p>
+                                    <p className="card-subtitle">字幕: {torrent.subtitle}</p>
+                                </div>
+                                <div className="card-stats">
+                                    <span className="stat">👍 {torrent.likeCount || 0}</span>
+                                </div>
+                                </div>
+                            ))}
+                            
+                            {!recommendLoading && recommendations.length === 0 && (
+                                <div className="no-recommendations">
+                                暂无推荐，请先下载一些资源以获取个性化推荐
+                                </div>
+                            )}
+                            </div>
+                        </div>
                     </div>
                 );
             case 'share':
