Je développe une application mobile qui utilise Discourse pour obtenir et poster des données. Pour le moment, je fais une requête toutes les 30 secondes pour vérifier s’il y a de nouveaux messages sur un sujet. Cela pourrait potentiellement nuire à notre forum en nous faisant accidentellement un d-dos.
J’ai cherché une bonne solution utilisant WebSockets en Flutter, mais sans succès jusqu’à présent. Pour Discourse, j’ai découvert MessageBus, dont la documentation est déroutante.
Pourtant, nous avons bien MessageBus configuré sur notre forum, comme le montre cette requête de sondage :
Ma question est donc de savoir si quelqu’un a une idée pour résoudre ce problème et a de l’expérience avec MessageBus ou les WebSockets Flutter.
Mais une solution plus simple est probablement d’utiliser la fonctionnalité WebHooks de Discourse. De cette façon, Discourse peut faire une requête web vers votre point de terminaison chaque fois qu’il y a un nouveau sujet/message. Vous pouvez trouver plus d’informations ici :
Je ne vois pas en quoi les webhooks seraient liés ou utiles à un frontend Flutter.
Il semble que ce que l’OP recherche est une implémentation Dart du client MessageBus… qui devrait probablement être rétro-conçue à partir de ce code Javascript. Une autre alternative pourrait être d’exécuter le code Javascript dans Dart, puis de l’encapsuler dans des liaisons pour traduire de Javascript à Dart. Un portage direct vers Dart devrait être le plus performant de ces deux options.
Que quelqu’un me corrige si je me trompe. Ce n’est pas quelque chose que j’ai exploré en profondeur, mais je trouve l’idée d’un frontend Flutter intrigante.