You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2024-03-01 11:45:52

J2C99
Member
Registered: 2020-08-11
Posts: 107

[GLPI 10] Problème API create ticket après migration v10

Bonjour

  Nous disposons d'un applicatif permettant la création/suivi de tickets dans GLPI,  utilisant pour cela l'API Rest.

  Dans certain cas, les tickets apparaissent mal formaté (on affiche le code HTML correspondant au descriptif du ticket).
  C'est un probleme tres similaire en apparance à Bogues GLPI/Problème affichage ticket après migration v10.0.10 28853

  Les conditions se posent lors de la  présence de caractères '<' et '>' dans le content du call API ( qui sera utilisé comme descriptif du ticket).

  Pour des raisons internes (=> src/ToolBox/Sanitized.php), il y a une methode qui détermine si les données sont de type HTML (si présence de '<', '>').
  Selon ce cas, un encodage va etre effectué (remplace '<'/'>','&' , ...) par des &#60,&#62,&#38 et stocke les données en base.
  Ensuite les données sont sockes en base (table glpi_logs , champ content)
  A l'affichage , les données sont chargées de la table , subissent le réencodage inverse puis affiché.

  Le drame se produit si les données initiales ont déja été encodés  en ne remplacant QUE ( les '<>' des tags xml en &lt;&gt; ), mais ne modifiant pas les '<>' hors tags.

  Il semble que le probleme  288553 soit similaire , mais avec des données deja en base.

Last edited by J2C99 (2024-03-07 15:37:34)

Offline

#2 2024-03-01 12:21:59

J2C99
Member
Registered: 2020-08-11
Posts: 107

Re: [GLPI 10] Problème API create ticket après migration v10

Cas du création du ticket '&#!pouet;"

  Lors de la création par notre application interne, la saisie est restreinte à "&#!pouet;"

Un call API  /apirest.php/Ticket   de type POST est effectué , avec la valeur content suivante:
"Descriptif: &!#pouet;&lt;br /&gt;Lieu de travail : Autre/Domicile"

En base de données
"Descriptif: &#38;#!pouet;&#38;lt;br /&#38;gt;Lieu de travail : Autre/Domicile"

A l'affichage
  "Descriptif: &#!pouet;<br />Lieu de travail : Autre/Domicile"
Au lieu de
  "Descriptif: &#!pouet;
   Lieu de travail : Autre/Domicile"


Le probleme ne se pose pas avec &#!pouetpouet en raison de l'absence du caractère ';' à la fin.

Last edited by J2C99 (2024-03-25 10:24:31)

Offline

Board footer

Powered by FluxBB