From e74d20adfad17d1b44ed6d834c38a19b8c7c35cd Mon Sep 17 00:00:00 2001 From: mathieu Date: Thu, 20 Aug 2026 21:56:43 +0200 Subject: [PATCH] Demande le manifeste PWA avec le cookie de session MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Le navigateur demande `manifest.webmanifest` sans cookie par défaut : SSOwat ne reconnaît aucune session et redirige vers le portail YunoHost, qui est une autre origine — la réponse n'a pas d'Access-Control-Allow-Origin et le manifeste est bloqué. L'application fonctionnait quand même, ce qui rendait le défaut discret : ce qui tombait, c'est ce que le manifeste décide à l'INSTALLATION (nom, icônes, start_url, mode standalone). Co-Authored-By: Claude Opus 5 --- CLAUDE.md | 32 +++++++++++++++++++++++++++++++ MaBibli.Client/wwwroot/index.html | 7 ++++++- 2 files changed, 38 insertions(+), 1 deletion(-) diff --git a/CLAUDE.md b/CLAUDE.md index 22fec8c..ec5a1b5 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -2225,6 +2225,38 @@ Vérifié en exécution, styles calculés à l'appui : à 375 px, menu déployé 1280 px, rangée horizontale centrée (six liens sur la même ligne à y = 55) et bascule `display: none`, sans débordement horizontal. +### ⚠️ Le manifeste PWA se demandait sans cookie — bloqué par le portail + +Relevé dans la console de l'application installée, le 2026-08-20 : + +``` +Access to manifest at 'https://akbar.nohost.me/yunohost/sso?r=…' + (redirected from 'https://mabibli.akbar.nohost.me/manifest.webmanifest') + blocked by CORS policy: No 'Access-Control-Allow-Origin' header +``` + +**Le navigateur demande le manifeste sans cookie par défaut** — c'est une requête CORS +anonyme, contrairement aux autres balises du ``. SSOwat ne reconnaît donc aucune session +et redirige vers le portail YunoHost, qui est **une autre origine** : la réponse ne porte aucun +`Access-Control-Allow-Origin`, et le manifeste est purement et simplement jeté. + +D'où `crossorigin="use-credentials"` sur le ``, qui fait porter le cookie +de session à cette requête-là. C'est le remède standard de toute PWA derrière une +authentification par portail, et il vaut pour **toutes** les instances YunoHost, pas seulement +celle de l'utilisateur. + +⚠️ **Le symptôme n'est pas une application cassée, et c'est ce qui le rend facile à ignorer** : +l'application fonctionne parfaitement dans le navigateur. Ce qui tombe, c'est ce que le +manifeste décide **à l'installation** — nom, icônes, `start_url`, mode `standalone`. Une PWA +installée depuis une page dont le manifeste n'a jamais été lu s'installe comme un simple +raccourci de navigateur. + +⚠️ `index.html` est un fichier **statique**, pas du Razor : les commentaires y sont des +``. Un `@* … *@` y resterait du texte. + +Vérifié en exécution : `crossOrigin === "use-credentials"` sur le lien, manifeste servi en +`200 application/manifest+json`, et plus aucune erreur le concernant dans la console. + ### Un retour explicite dans le bandeau « Le déplacement est foireux » : d'un écran profond (bibliographie, fiche de tome, ajout diff --git a/MaBibli.Client/wwwroot/index.html b/MaBibli.Client/wwwroot/index.html index fbae10f..6a37ac1 100644 --- a/MaBibli.Client/wwwroot/index.html +++ b/MaBibli.Client/wwwroot/index.html @@ -10,7 +10,12 @@ - + +