Les rapports de liaison se cassent lorsqu'ils sont placés dans un message sous forme de lien avec du texte

C’est un problème un peu étrange, mais il met en évidence un problème avec les liens dans les publications qui sont associés à du texte.

Si je :

  1. crée une requête d’explorateur de données avec une variable
  2. et l’assigne à un groupe
  3. visite l’URL via l’onglet rapports du groupe
  4. ajoute la variable et exécute la requête
  5. copie l’URL et l’ajoute à du texte dans une publication

alors l’URL est corrompue / cassée.

Ce que j’observe :

  1. Voici un exemple de lien ainsi créé (privé désolé) :
    https://ehealthforum.nz/g/HiNZ-staff/reports/128?params=%7B%22topic_id%22%3A%2234521%22%7D
  2. Lorsque j’ajoute ce lien à du texte ici, quelque chose tourne mal avec l’encodage de l’URL et nous obtenons ceci :
    https://ehealthforum.nz/g/HiNZ-staff/reports/128?params=%257B%2522topic_id%2522%253A%252234521%2522%257D

Et cela casse magnifiquement le site !

Si je colle simplement le lien dans la publication, cela n’arrive pas - c’est seulement lorsque je l’ajoute à du texte. Donc quelque chose se passe mal lorsqu’il rencontre un encodage existant, je pense.

Le rapport de @nathank s’est concentré sur la chose de niche spécifique qu’ils faisaient lorsqu’ils ont rencontré le bug. Cependant, le bug n’est en aucun cas spécifique à Data Explorer. Je crains que l’orientation trop étroite du rapport et l’utilisation de la balise data-explorer non pertinente (la balise appropriée serait composer) ne rendent difficile son interprétation par l’équipe Discourse, ou qu’elle ne reçoive pas l’attention appropriée.

La faute se produit universellement dans les conditions suivantes :

  • L’URL contient du contenu encodé en pourcentage
  • Le lien est ajouté au message via la boîte de dialogue « Insérer un lien ».

L’URL est toujours corrompue dans ces conditions.

Étapes reproductibles :

  1. Ouvrez l’URL suivante dans votre navigateur Web :
    https://en.wikipedia.org/wiki/Horncastle_boar%27s_head
    (notez que l’URL contient l’encodage en pourcentage du caractère ', %27)
    :slightly_smiling_face: La page attendue s’ouvre.
  2. Cliquez sur l’icône « Lien » dans l’éditeur de publication.
    La boîte de dialogue « Insérer un lien » s’ouvrira.
  3. Entrez l’URL ci-dessus dans le champ « Lien ou sujet » de la boîte de dialogue.
  4. Cliquez sur le bouton « Insérer ».

:bug: La cible du lien ajouté par la procédure ci-dessus est incorrecte :
https://en.wikipedia.org/wiki/Horncastle_boar%2527s_head

au lieu de l’URL correcte :
https://en.wikipedia.org/wiki/Horncastle_boar%27s_head

Le lien ne mènera pas à la page prévue.

Cela s’est produit parce que le caractère % de l’encodage en pourcentage %27 a été encodé de manière redondante, provoquant le remplacement du % par son propre encodage en pourcentage %25, ce qui a corrompu le contenu de l’URL correcte %27 en %2527.

Plateforme :

Système d’exploitation

  • Windows 11

Navigateur

  • Google Chrome 139.0.7258.128

Discourse

12c80d43adeb87cc18604ace0430a75d277d7662

Contexte supplémentaire :

Je suis en mesure de reproduire la faute sur try.discourse.org en « mode sans échec ».


La faute se produit dans les deux modes de l’éditeur.

2 « J'aime »

OK, je peux le reproduire, mais exclusivement en utilisant la modale de lien, c’est bien ça ? (Juste pour confirmer la portée du problème)

Si je le colle directement : https://en.wikipedia.org/wiki/Horncastle_boar’s_head ; ou que je colle l’URL sur une sélection, cela fonctionne comme prévu.

EDIT : Ou… presque. L’URL directe est décodée : https://en.wikipedia.org/wiki/Horncastle_boar’s_head, ce qui est également inattendu et évite l’intégration en ligne.

Merci pour le rapport !

3 « J'aime »

Oui, c’est exact.

1 « J'aime »

Oui, c’était le cas - je ne réalisais pas qu’il s’agissait d’un problème d’encodage de lien plus large avec la modale de lien du compositeur.

J’ai modifié le titre et la balise pour refléter vos bons points et vos recherches !

2 « J'aime »

Je pense que cela a été corrigé dans

Le résultat est
[Horncastle boar's head](https://en.wikipedia.org/wiki/Horncastle_boar's_head)
:white_check_mark:

3 « J'aime »

oui, je me souviens avoir tripoté ça, je pense que c’est bon à fermer !

3 « J'aime »

Ce sujet a été automatiquement fermé après 4 jours. Les nouvelles réponses ne sont plus autorisées.