Fix: Suppression erreurs console OpenRouter 400

Problème: Console spam 400 errors quand clé API OpenRouter non configurée
- Frontend: Chat appelle getModels() sans vérifier si API key existe
- Backend: Retourne 400 au lieu de 200 avec tableau vide

Solutions:
- Frontend (Index.tsx:556): Ajout check settings.openrouter_api_key avant loadOpenRouterModels()
- Backend (openrouter.routes.js:28,93): Return 200 [] au lieu de 400 error quand pas de clé API

Résultat: Plus d'erreurs console, UI affiche simplement pas de modèles
This commit is contained in:
Claude committed 2025-11-14 18:30:53 +00:00
1 parent d944884fe4
commit bdff16a74d
2 files changed
+7 -9

No files matched your search

+4 -6
View File
@@ -26,10 +26,8 @@ router.get('/models', authenticateToken, async (req, res) => {
const setting = await getOne('SELECT value FROM settings WHERE key = $1', ['openrouter_api_key']);
if (!setting || !setting.value) {
return res.status(400).json({
error: 'Clé API OpenRouter non configurée',
models: []
});
// Return 200 with empty array to avoid console errors
return res.status(200).json([]);
}
// Appeler l'API OpenRouter pour récupérer les modèles
@@ -93,8 +91,8 @@ router.post('/refresh-models', authenticateToken, requireAdmin, async (req, res)
const setting = await getOne('SELECT value FROM settings WHERE key = $1', ['openrouter_api_key']);
if (!setting || !setting.value) {
return res.status(400).json({
error: 'Clé API OpenRouter non configurée',
return res.status(200).json({
message: 'Clé API OpenRouter non configurée',
models: []
});
}
+3 -3
View File
@@ -552,12 +552,12 @@ const Index = () => {
}
}, []);
// Load models when chatbox opens
// Load models when chatbox opens (only if API key is configured)
useEffect(() => {
if (chatOpen && openRouterModels.length === 0) {
if (chatOpen && settings.openrouter_api_key && openRouterModels.length === 0) {
loadOpenRouterModels();
}
}, [chatOpen]);
}, [chatOpen, settings.openrouter_api_key]);
// Set default model when models are loaded
useEffect(() => {