Frage

Ich habe, indem sie eine Interaktion für die HTML / CSS Entwickler das Leben schwer gemacht, die eine Nebenwirkung in eine Taste hat und keinen Hyperlink.

Zum Beispiel änderte ich den „Clear Basket“ in einer Shopping-Site von einem Link auf eine Schaltfläche. Unter der Prämisse, dass jede Aktion, die eine Nebenwirkung hat, soll eine Schaltfläche nicht ein Hyperlink sein. (Sogar tho eine Spinne oder Roboter werden nie an diesen Punkt gelangen) Was hat das REST?

Die beste Antwort wird gute Gründe habe ich, warum ich schwierig für die HTML / CSS Jungs machen Dinge verwenden können, ... oder warum ich falsch :-) bin, ... vielleicht puristische ich zu sein, aber für keinen wirklichen Grund?

. Hinweis: Ich bin nicht abgeneigt, setzen Ajax Funktionen, die zustandsbehaftete Nebenwirkungen auf einen Hyperlink oder sogar auf Auswahl-verändert Veranstaltung hat

Prost. Murray.

War es hilfreich?

Lösung

Ich glaube, Sie haben das Richtige getan, aber es ist wahrscheinlich außerhalb der Domain „REST“.

rechtfertigen

Wenn diese Links sind wirklich nur <a> Tags, die im Browser führen zu machen eine GET-Anforderung dann geklickt haben, dann sollten sie haben keine Nebenwirkungen, weil GET sein soll, per HTTP-Spezifikation, sicher und idempotent. Siehe frühere Bemerkungen über Spinnen nach den Links, etc.

Wenn nun die „Links“ verwendet Javascript wirklich einen POST an den Server zu tun, wenn darauf geklickt wird, oder irgendeine Art von Trick wie das, dann sind sie A-OK von HTTP-Sicht. Wahrscheinlich mehr Arbeit, als sie wert sind, aber RESTful.

Aber es gibt User Interface Design zu zu berücksichtigen. Da in der einfachen HTML ohne CSS und JavaScript ein Link immer ein GET ist, seit 1994 geschulten Anwender etwas zu erwarten, dass sieht wie ein Hyperlink sicher und idempotent zu sein. etwas anderes, Ihre Designer sind in Verletzung das Prinzip der geringsten Überraschung Dadurch. Dies scheint wie etwas Jacob Nielsen würden Sie sichern auf.

Andere Tipps

Das hat nicht wirklich viel mit REST zu tun, aber ich versuche, diese einfache Regel zu folgen:

Hyperlinks are for navigation.
Buttons are for interaction.

Es ist nicht wirklich wichtig, wenn Ihre „Stateful“ Aktionen Links oder Schaltflächen sind. Sie können einen Link haben, löscht / fügt etc. Konsistenz ist, was zählt. Also, wenn Sie diese Aktionen Tasten sein haben wollen, ist das in Ordnung. Ich denke, dass talentierte CSS Menschen können Links wie Knöpfe aussehen. Sie können keine HTML-Tasten überhaupt benötigen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top