AlleNeuVerbessertBehoben
Behoben

Browser erfasst den echten Status nach Cloudflare-Freigabe

Wenn ein durch Cloudflare geschütztes Ziel nach bestandener Challenge eine echte Geo-Block-Seite (451) auslieferte, meldete das Browser-Produkt dies als 200, da der Watcher den freigegebenen Status hartcodiert hatte. Der Watcher liest nun das tatsächliche Document nach der Freigabe, sodass eine 200 eine 200 bleibt, eine 451 als 451 angezeigt wird und Auto die falschen Inhalte ablehnt und weiter nach einem Exit sucht, der genau deinen validate Regeln entspricht.

Behoben

Cmd+K funktioniert auf nicht-lateinischen Tastaturen

Die Tastenkombination Cmd+K (Strg+K) öffnet nun die Befehlspalette und das Such-Modal unabhängig vom Tastaturlayout. Bisher haben wir das getippte Zeichen abgeglichen (к bei einem kyrillischen Layout), sodass bei einem nicht-lateinischen Layout nichts passierte. Jetzt prüfen wir die physische Taste. Behoben auf der Hauptseite, im Blog und in der Dokumentation.

Behoben

Auto nutzt volles Budget bei Cold Solves

Ein Cold Auto Solve kann mehrere Minuten dauern, und der Request bleibt nun für das gesamte Budget offen. Fehler aus jeder Schicht werden als JSON zurückgegeben, das dein Client parsen kann.

Behoben

Automatische Amortisierung auf 2 Credits bei Folge-Requests

Cookie-wiederverwendbare Seiten (bet365 war der Testfall) blieben beim teuren Browser-Solve von 15 Credits pro Request hängen, anstatt nach dem ersten Solve auf das günstige 2-Credit-Replay zurückzufallen. Zwei Fehler: Die Sperre löste bei jedem vorübergehenden Transportfehler aus, und ein erfolgreiches Browser-Replay aktualisierte die Session-Cookies nicht. Beide behoben. Wiederholte Requests auf einer Cookie-wiederverwendbaren Seite kosten nach dem ersten Solve nun 2 Credits, genau wie es die Preisgestaltung vorsieht.

Behoben

Cross-Origin-Zugriff auf die API eingeschränkt

Wir haben den Cross-Origin-Zugriff eingeschränkt, sodass nur noch foura.ai die API mit Credentials aufrufen kann. Zudem haben wir einen Input-Filter auf dem Metrics-Endpoint gehärtet und ein Entwicklungs-Fallback-Secret entfernt. An bestehenden Integrationen ändert sich nichts.

Behoben

Eigene Validate-Regeln zählen als Erfolg

Wenn du validate.status.accept für einen Request gesetzt hast, behandelt die Engine einen akzeptierten Nicht-200-Status als sauberen Erfolg. Die Activity-Anzeige hat diese bisher noch als Fehler markiert, was deine Nutzungsstatistiken verfälscht hat. Die Ergebnisse folgen jetzt deiner Validate-Entscheidung, sodass ein von dir akzeptierter 403-Status als Erfolg und nicht als App-Fail angezeigt wird.

Behoben

Nicht-UTF-8-Seiten werden jetzt sauber decodiert

Wenn du kyrillische, chinesische, japanische oder andere Nicht-UTF-8-Seiten über Single gescrapt hast, kam der Body bisher als Mojibake zurück. Wir haben zuvor jede Response erzwungen als UTF-8 decodiert, bevor du die Raw-Bytes sehen konntest. Jetzt lesen wir das Charset aus der Response (Content-Type, dann <meta charset>, dann UTF-8-Fallback) und decodieren es korrekt. Danke an Alexandar Kanchev (Sensika) für die Meldung.

Behoben

Fake-Proxys abgefangen, die deinen Request zurückspiegeln

Einige Proxys da draußen leiten deinen Request gar nicht wirklich weiter. Sie spiegeln ihn als Klartext-Server-Dump zurück und versuchen, den Inhalt abzugreifen. Wir erkennen dieses Muster jetzt, bevor die Response deinen Code erreicht, sodass Single, Browser und Proxy Finder alle einen echten Fehler (oder Retry) statt des Mülls zurückgeben.

Behoben

Neu gefundene Proxies gelangen schneller in den Pool

Wir haben eine Verzögerung behoben, die neu entdeckte Proxies vor der Validierung warten ließ. Proxy Finder prüft sie jetzt sofort, sodass der Pool durch mehr aktive, funktionierende Proxies in Rotation frischer bleibt.

Behoben

Playground-Cookies folgen RFC 6265 Host-Only-Regeln

Playground verfolgt nun das Attribut Domain korrekt, sodass Host-only-Cookies auf ihrem Host bleiben. Die Parsed-Ansicht markiert sie mit einem HO-Badge, und Raw entspricht dem, was der Upstream gesendet hat.

Behoben

Playground-Felder entsprechen dem echten API-Schema

Jedes Playground-Feld ist nun schema-konform: Browser erzwingt GET, verbirgt das Body-Textfeld, und der Raw-Tab zeigt das exakte JSON, das an die API gesendet wird, sowie einen curl-Befehl zur Reproduktion.

Behoben

Unblocker funktioniert durchgehend bei Single und Proxy Finder

Mit unblocker: true übertragen Single und Proxy Finder nun die vollständige Unblocker-Signatur bis zum Origin, sodass Anti-Bot-Systeme, die diese prüfen, die Request durchlassen.

Behoben

Passive Cloudflare-Challenges werden in Browser gelöst

Einige Cloudflare-Seiten geben 200 OK zurück, injizieren aber ein Hintergrundskript, das einen Moment später das echte cf_clearance-Cookie ausstellt. Früher gab Browser die Seite zurück, bevor dieses Cookie eintraf, wodurch der Jar leer blieb. Jetzt wartet Browser auf das Cookie-Event, sodass du ein sauberes cf_clearance erhältst, das du über Single oder Proxy replaysen kannst.

Behoben

Blog-Pagination-Links funktionieren jetzt

Der „Älter“-Button im Blog hat dich früher zurück auf Seite 1 geleitet. Die Pagination läuft jetzt über /blog/page/N/-URLs mit nummerierter Navigation, sodass du ältere Beiträge tatsächlich durchstöbern kannst. Danke, Vladimir Petrov.

Behoben

Browser führt bei jedem Request JavaScript aus

Der Browser leitet nun jeden Request durch die JavaScript-Engine, sodass Cloudflare-Challenges und JS-lastige Seiten wie erwartet gerendert werden.