Problème d’affichage de Swagger après mise à jour vers Dolibarr 19.0.4

Bonjour à tous !

Je rencontre un problème avec l’interface Swagger depuis que nous avons effectué une montée de version de Dolibarr, passant de la version 16.0.5 à 19.0.4. L’API fonctionne correctement (les endpoints répondent bien aux requêtes via des outils comme Postman), mais l’interface Swagger ne s’affiche pas lorsque j’essaie d’y accéder via l’URL /api/index.php/explorer/#/.

Environnement :
• Version de Dolibarr : 19.0.4
• Version précédente : 16.0.5
• Version de PHP : 8.1
• Système d’exploitation : Linux (Ubuntu 22.04)
• Serveur web : Apache avec HTTPS activé (certificat SSL valide)
• Protocole utilisé : HTTP/2

Lorsque je tente d’accéder à Swagger, la page reste vide et des erreurs apparaissent dans la console du navigateur (Chrome et Firefox/ Safari charge à l’infini). Voici un extrait des erreurs relevées :

GET /api/index.php/explorer/ net::ERR_HTTP2_PROTOCOL_ERROR 200 (OK)
GET /api/index.php/explorer/css/screen.css net::ERR_HTTP2_PROTOCOL_ERROR 200 (OK)
GET /api/index.php/explorer/lib/jquery-1.8.0.min.js net::ERR_HTTP2_PROTOCOL_ERROR 200 (OK)
GET /api/index.php/explorer/lib/swagger-ui.js net::ERR_HTTP2_PROTOCOL_ERROR 200 (OK)
GET /api/index.php/explorer/css/print.css net::ERR_HTTP2_PROTOCOL_ERROR 200 (OK)

Ces erreurs concernent principalement des fichiers CSS et JS nécessaires au bon fonctionnement de Swagger.

Questions :

  1. Quelqu’un a-t-il déjà rencontré ce type de problème avec Swagger après une mise à jour de Dolibarr ?
  2. Existe-t-il une configuration spécifique pour que Swagger fonctionne correctement dans cette version ?
  3. Y a-t-il des solutions ou contournements connus pour résoudre ce problème ?

Merci d’avance pour votre aide et vos retours ! :blush:

Bonjour,
Je ne sais pas si vous avez résolu votre problème. En ce qui me concerne j’ai déjà eu des problèmes d’affichage de Swagger lié à un module externe qui n’était pas à jour ou plus compatible avec une nouvelle version de Dolibarr.

J’ai le même problème et, sans avoir encore trouvé la solution, je constate que le pb vient de Swagger qui force à passer les URL de HTTP à HTTPS.

J’ai l’interface qui s’affiche partiellement avec un .htaccess dans /api/ contenant :

SetEnvIf Request_URI « ^/api » no-http2