Kleiderkreisel-Mailtracking deaktivieren

Seit dem neuesten Update der Kleiderkreisel-App ist es möglich, andere Benutzer anhand ihrer Mailadresse zu finden. Diese Funktion ist nur über die App selbst zu deaktivieren, betrifft allerdings Desktop-Benutzer ebenso.

Abhilfe schafft ein simples Javascript-Snippet, das dieses Tracking deaktiviert.

Achtung: Dieses Script wird nicht mehr benötigt, weil es jetzt eine offizielle Option dafür gibt.

Anleitung

Obenstehenden Code in die Zwischenablage kopieren, sich bei Kleiderkreisel einloggen, die Einstellungen aufrufen, in die Adresszeile des Browsers javascript: (mit Doppelpunkt) eintippen, den Code einfügen und Enter drücken.
In manchen Browsern (zb dem neuesten Firefox) ist es nicht möglich, den Code so auszuführen. Hier muss stattdessen auf der Kleiderkreisel-Einstellungsseite die Konsole aufgerufen werden, und der Code hier eingegeben. Diese findet ihr unter Extras->Web-Entwickler->Web-Konsole.

Methode 1 auf Youtube

Methode 2 auf Youtube

Technische Erklärung

Zum Zeitpunkt der Erstellung dieses Artikels war es nur über die Smartphone-App möglich, die Option zu deaktivieren. Die Smartphone-App selbst kommuniziert per HTTPS mit der Mobile-API, was durch obenstehenden Javascript-Code repliziert wird.

Es gibt zwei Voraussetzungen, um diesen Call auszuführen:
– der User muss eingeloggt sein, was über den (für API und Web gleichermaßen genutzten) Cookie _kleiderkreisel_session geprüft wird
– ein gültiger Token muss im Header X-Auth-Token gesendet werden

Desweiteren muss der Code von einer HTTPS-Seite auf Kleiderkreisel.de ausgeführt werden. So ist nicht nur jQuery, der Session-Cookie und die User-ID bereits verfügbar, es kann auch ein eigener Token abgerufen werden. Die API nimmt zwar Befehle unabhängig vom Referrer entgegen, liefert jedoch keinen Access-Control-Allow-Origin Header zurück, weswegen Javascript die Antwort nur auslesen kann, wenn es im Domainkontext ausgeführt wird.

Ein gültiger Token kann über einen GET-Aufruf an /api/1.2/get_token angefordert werden, wobei lediglich der Parameter api_key der Kennziffer 1067715639 entsprechen muss. Der Parameter device_id wird weder geprüft, noch ist er erforderlich.
Der Token läuft nach einer gewissen Zeit ab, weswegen er der Einfachkeit halber für jeden Aufruf neu erzeugt wird. Er ist nicht an einen Account gebunden, manche API-Funktionen können sogar ohne eine gültige Benutzer-Session genutzt werden.