db 연결 패치

This commit is contained in:
2026-03-01 15:02:44 +09:00
parent c0b3598f88
commit 5c4117658e
4 changed files with 25 additions and 5 deletions

View File

@@ -77,10 +77,13 @@ const MapResizer = () => {
};
const AdSenseComponent = () => {
const loadedRef = useRef(false);
useEffect(() => {
if (loadedRef.current) return;
try {
// @ts-ignore
(window.adsbygoogle = window.adsbygoogle || []).push({});
loadedRef.current = true;
} catch (e) {
console.error('AdSense error:', e);
}

13
package-lock.json generated
View File

@@ -10,6 +10,7 @@
"dependencies": {
"@google/genai": "1.40.0",
"cors": "^2.8.6",
"dotenv": "^17.3.1",
"express": "^5.2.1",
"leaflet": "1.9.4",
"lucide-react": "0.460.0",
@@ -2168,6 +2169,18 @@
"node": ">=8"
}
},
"node_modules/dotenv": {
"version": "17.3.1",
"resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.3.1.tgz",
"integrity": "sha512-IO8C/dzEb6O3F9/twg6ZLXz164a2fhTnEWb95H23Dm4OuN+92NmEAlTrupP9VW6Jm3sO26tQlqyvyi4CsnY9GA==",
"license": "BSD-2-Clause",
"engines": {
"node": ">=12"
},
"funding": {
"url": "https://dotenvx.com"
}
},
"node_modules/dunder-proto": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",

View File

@@ -5,12 +5,14 @@
"type": "module",
"scripts": {
"dev": "vite",
"server": "node server.js",
"build": "vite build",
"preview": "vite preview"
},
"dependencies": {
"@google/genai": "1.40.0",
"cors": "^2.8.6",
"dotenv": "^17.3.1",
"express": "^5.2.1",
"leaflet": "1.9.4",
"lucide-react": "0.460.0",

View File

@@ -1,3 +1,4 @@
import "dotenv/config";
import express from 'express';
import mysql from 'mysql2/promise';
import cors from 'cors';
@@ -55,7 +56,8 @@ async function initializeDB() {
const [rows] = await pool.query('SELECT COUNT(*) as count FROM markers');
console.log(`[DB] Current Status: ${rows[0].count} markers stored in database.`);
} catch (error) {
console.error('[DB] MariaDB connection failed:', error.message);
console.error('[DB] MariaDB connection failed details:', error);
console.error('[DB] Host:', dbConfig.host);
process.exit(1);
}
}
@@ -74,8 +76,8 @@ app.get('/api/markers', async (req, res) => {
}));
res.json(formattedMarkers);
} catch (error) {
console.error(error);
res.status(500).json({ error: 'Failed to fetch markers' });
console.error('[API] GET Markers Error:', error);
res.status(500).json({ error: 'Failed to fetch markers', detail: error.message });
}
});
@@ -97,8 +99,8 @@ app.post('/api/markers', async (req, res) => {
if (isDebug) console.log(`[API] Successfully saved marker: ${id}`);
res.json({ success: true });
} catch (error) {
console.error(error);
res.status(500).json({ error: 'Failed to save marker' });
console.error('[API] POST Marker Error:', error);
res.status(500).json({ error: 'Failed to save marker', detail: error.message });
}
});