Discourse dazu zwingen, einen Link nicht zu besuchen

Hallo,

ich verwende die API, um PMs zu erstellen. Der Inhalt kann HTML und auch Links enthalten. Unter diesen Links gibt es einige, die als One-Click-Aktionslinks fungieren. Ein einfaches Link-Beispiel: <a href="https://" target="_blank">..</a>

Das Problem ist, dass Discourse alle Links besucht und diese One-Click-Aktionen auslöst.

Wie kann man das verhindern? Ich bin mir nicht sicher, welche Funktion dafür verantwortlich ist.
Gibt es einen bestimmten Hinweis, den wir in das HTML einfügen können, um Discourse anzuweisen, einen Link zu ignorieren?
Oder habe ich eine Option übersehen?

Hinweis: Derzeit habe ich eine Prüfung im Backend hinzugefügt, um den Discourse-Besuch zu ignorieren, aber falls möglich, würde ich gerne vermeiden, sich darauf zu verlassen.

Vielen Dank!

Es ist nicht vorgesehen, einen Link zu codieren, der beim bloßen Aufruf eine Aktion auslöst. Dies wird in vielerlei Hinsicht als ausnutzbar angesehen. Der Benutzer muss die Aktion ausdrücklich bestätigen.

Der Kontext ist im Wesentlichen, dass Benutzer Benachrichtigungen abonnieren, und aus rechtlichen Gründen müssen Sie Links anfügen, die es ihnen ermöglichen, sich von der aktuellen Benachrichtigung oder allen Benachrichtigungen abzumelden. Diese spezifischen Links müssen mit einem Klick funktionieren, ohne dass zusätzliche Schritte (Anmeldung, Bestätigung usw.) erforderlich sind. Diese Links verwenden ein generiertes Token und können nicht ausgenutzt werden. Benutzer sehen die Nachricht mit diesen Links in ihrem privaten Posteingang (Discourse oder andere wie Gmail); eine Bestätigung ist dafür unerwünscht und wird auch nicht helfen.

Meine Frage bleibt also bestehen: Gibt es eine Möglichkeit, Discourse mitzuteilen, dass es einen Link nicht aufrufen soll? Entweder über HTML oder Optionen?

Unabhängig vom Kontext ist es eigentlich interessant zu wissen. Falls dies nicht möglich ist, wäre eine Option, Domains/URLs zu blacklisten, um unnötige Anfragen zu vermeiden, sehr willkommen.

Noch einmal: Das können Sie nicht tun. Es gibt auch Browser (und Erweiterungen) sowie Virenscanner, die Links, die sie auf einer Seite finden, im Voraus besuchen bzw. vorladen.

Jede Anfrage, die eine tatsächliche Änderung auf einem Server bewirkt, muss gemäß der HTTP-Spezifikation eine POST-Anfrage sein. Wenn Sie also einen Link haben, müssen Sie diesen auf eine Webseite führen, die eine Schaltfläche enthält, die eine POST-Anfrage ausführt. Jeder andere Weg führt zu undurchsichtigen Problemen.

Wer sagt, dass sie das müssen? Es ist ganz normal, dass Abmeldelinks auf eine Bestätigungsseite führen – aus genau dem Grund, den ich oben genannt habe.

Das ist tatsächlich ein sehr stichhaltiger Grund. Darauf war ich nicht gekommen. :thinking:

In erster Linie mein Kunde. :smile:
Eigentlich hatte ich zuerst ein Formular erstellt, aber er wollte einen Link für eine Aktion mit einem Klick.

Aber du hast einen sehr wichtigen Punkt angesprochen, danke, dass du mich darauf aufmerksam gemacht hast!