Interaction étrange entre Discourse et Google Translate

Ceci a été soulevé par l’un de nos membres réguliers qui utilise un module complémentaire Firefox pour la traduction de pages, mais cela semble indépendant de celui-ci et peut être reproduit avec n’importe quelle page sur meta.

Étapes :

  1. Allez sur https://translate.google.com/
  2. Collez une URL comme https://meta.discourse.org/t/using-discourse-index/308031
  3. Cliquez sur l’icône/bouton de traduction

Vous atterrirez probablement sur une page 404 de Discourse avec une URL comme celle-ci :

https://meta-discourse-org.translate.goog/t/using-discourse-index/308031/t/using-discourse-index/308031?_x_tr_sl=en&_x_tr_tl=pt-PT&_x_tr_hl=en&_x_tr_pto=wapp&_x_tr_hist=true

Notez que l’URL contient le chemin /t/using-discourse-index/308031 dupliqué. La suppression du fragment dupliqué permet à la traduction de fonctionner comme prévu.

Normalement, ce serait un problème avec Google Translate, mais cela ne semble se produire qu’avec Discourse (j’ai essayé quelques autres sites Web) et après notre mise à jour vers la version 3.2.

2 « J'aime »

Désolé de revenir sur ce sujet, mais je pense que j’ai choisi le mauvais titre (et le mauvais angle) et qu’il n’a pas reçu l’attention voulue.

Actuellement, Discourse est incompatible avec Google Traduction, qui est probablement l’outil de traduction le plus utilisé.

Toute URL de sujet collée dans Google Traduction aboutit toujours à la traduction de la page 404 et non du sujet réel. Cela fonctionne bien avec les URL de la page d’accueil et des listes de sujets – mais pas avec un sujet.

Peut-être que Google Traduction est alimenté par une version spéciale pour les robots d’exploration/d’impression qui ne fonctionne pas à cette fin ?

J’utilise Google Traduction régulièrement et je n’ai vu ce comportement qu’avec les sujets Discourse, donc au moins une partie du problème semble venir de Discourse.

Il semble que cela affecte toutes les applications Ember. Par exemple, même l’application de documentation d’Ember\n\n

\n\nIl semble que Google relaie le site, injecte du Javascript et une balise \u003cbase\u003e. Nous pourrions être en mesure de détecter les modifications de Google et de contourner le problème de 404… mais je doute fort qu’une application JS complexe comme Discourse fonctionne bien via le proxy de Google.\n\nUne solution de contournement consiste à utiliser la fonctionnalité de traduction intégrée aux navigateurs (nativement ou via une extension). Ceux-ci n’ont pas le même comportement de proxy/injection.

1 « J'aime »