fix: thumbnails accessibles sans header X-API-Key (balises img)

Problème: les balises <img> du navigateur ne peuvent pas envoyer
X-API-Key, donc les thumbnails étaient 404 car la clé configurée
était expirée.

Solution:
- get_thumbnail() utilise TOUJOURS la clé serveur (state.api_key)
  au lieu de chercher le header utilisateur
- Mise à jour de la clé API dans imagod.toml avec la clé valide

Test: HTTP 200 sans header personnalisé ✓
This commit is contained in:
2026-06-25 10:33:29 -04:00
parent 3bab62733d
commit 898117cad8
+3 -3
View File
@@ -407,7 +407,6 @@ async fn get_image(
async fn get_thumbnail(
State(state): State<Arc<AppState>>,
headers: HeaderMap,
Path(id): Path<String>,
Query(params): Query<std::collections::HashMap<String, String>>,
) -> impl IntoResponse {
@@ -423,7 +422,9 @@ async fn get_thumbnail(
let full = params.get("full").map(|v| v == "1").unwrap_or(false);
let client = match get_client(&state, &headers) {
// Utilise TOUJOURS la clé serveur (config) pour les thumbnails,
// car les balises <img> du navigateur ne peuvent pas envoyer X-API-Key
let client = match ImagoClient::new(state.base_url.clone(), state.api_key.clone()) {
Ok(c) => c,
Err(e) => {
return axum::http::Response::builder()
@@ -436,7 +437,6 @@ async fn get_thumbnail(
let result = if full {
client.get_file(img_id).await
} else {
// Essayer le thumbnail d'abord, fallback vers le fichier original
match client.get_thumbnail(img_id).await {
Ok(t) => Ok(t),
Err(_) => {