23 Stimmen

Abfangen und Verwenden lokaler Dateien in http-Anfragen

Ich suche ein Tool, mit dem Nicht-Programmierer Dateien auf einem Live-Server testen können.

Sie können zum Beispiel ein Bild auf ihrem Computer ändern, eine Webseite neu laden und dann sofort das Ergebnis ihrer Arbeit sehen.

Ich habe versucht, ein Werkzeug dafür zu finden, weil es so offensichtlich scheint, dass jemand daran gedacht haben muss, aber viele Software, die ich sehe, passt nicht ganz. Ein Tool namens Fiddler tut dies (sie nennen es autoresponding), aber es ist nur für Windows. Ich könnte die hosts-Datei so ändern, dass sie auf eine lokale Instanz von nginx oder so umleitet, aber das scheint schwer zu pflegen zu sein, wenn alles, was ich wirklich will, ein einfaches Tool ist, das so etwas macht...

http://someserver.com/css/ (.*) -> /home/user/localcss/$1

Hat jemand irgendwelche Empfehlungen?

Modifier : Klärung der Umleitung

0 Stimmen

Fiddler-spezifische Version der gleichen Frage stackoverflow.com/q/17033990/10245

23voto

EricLaw Punkte 55641

Fiddler verfügt über diese Funktion; klicken Sie einfach auf die Registerkarte AutoResponder und ordnen Sie URLs lokalen Dateien zu. Tausende von Menschen tun dies jeden Tag.

Siehe auch Video #5 hier: http://www.fiddlerbook.com/fiddler/help/video/default.asp

8voto

ghostCoder Punkte 7319

Ich fand Charles Proxy sehr nützlich für diese Aufgabe http://www.charlesproxy.com/documentation/tools/map-local/

4voto

LambethWalk Punkte 106

Max' PAC-Lösung hat mir das Leben gerettet, deshalb stelle ich mehr Details zur Verfügung (kann noch nicht abstimmen)

Um eine lokale Version von z. B. css-Dateien zu verwenden, erstellen Sie eine Datei "proxy.pac", die diese Funktion enthält:

function FindProxyForURL(url, host)
{
    // use regex to match requests ending with '.css'
    // and redirect them to localhost
    var regexpr = /.**\.css/;
    if(regexpr.test(url))
    {
        return "PROXY localhost";
    }

    // Or else connect directly:
    return "DIRECT";
}

Speichern Sie "proxy.pac" und verweisen Sie in Ihrem Browser auf diese Datei. In Firefox finden Sie diese Datei unter Optionen > Erweitert > Verbindung > Einstellungen > URL für automatische Proxy-Konfiguration

Fügen Sie Ihrem Webserver am besten auch einen MIME-Typ hinzu: Ordnen Sie '.pac' dem Typ 'application/x-ns-proxy-autoconfig' zu.

Alle Anfragen an .css-Dateien werden nun an localhost weitergeleitet. Vergessen Sie nicht, sicherzustellen, dass die Dateistruktur auf dem Proxyserver dieselbe ist.

Im Falle von CSS kann es durchaus einfacher sein, CSS durch die Verwendung eines lokalen Chrome zu überschreiben. Zum Beispiel in Firefox, chrome/userContent.css. Siehe http://kb.mozillazine.org/UserContent.css

1voto

max Punkte 666

Es ist eine Weile her, dass ich diese Frage gestellt habe, und ich habe eine gute Technik, die nicht vorgeschlagen wurde.

PAC-Dateien werden von allen gängigen Browsern unterstützt und ermöglichen es Ihnen, ein Skript zu schreiben, das jede einzelne Anfrage an einen Proxy-Server umleiten kann. So könnte der Proxyserver beispielsweise eine PAC-Datei bereitstellen, die PAC-Datei könnte URLs auf der Whitelist an den Proxyserver weiterleiten und die lokalen Versionen dieser Dateien zurückgeben. Er kann sogar HTTPS unterstützen.

Es gibt jedoch einen Haken - Internet Explorer. Er "zwischenspeichert" die Ergebnisse dieses Skripts fälschlicherweise, so dass, wenn eine URL in einer Domäne als Proxy verwendet wird, alle URLs in dieser Domäne als Proxy verwendet werden. Diese Funktion kann deaktiviert werden Allerdings.

1voto

nsrCodes Punkte 426

Sie können dies mit dem Antwort ändern einregeln Auf Anfrage .

Mit der Option local file können Sie eine beliebige Datei angeben, die als Antwort auf die abgefangene Anfrage verwendet werden soll.
Nach ihren Angaben Dokumentation Sie unterstützt auch Hot-Reloading, d.h. solange der Dateipfad gleich bleibt, übernimmt die Regel die von Ihnen vorgenommenen Änderungen.

Was den dynamischen URL-Abgleich anbelangt, so bieten sie Unterstützung für Regex und Wildcards in ihren Quellfilter

Hinweis: Dies ist derzeit nur in ihrem Desktop-Applikation .
Wenn Sie dies mit Hilfe ihrer Chrom-Erweiterung , was ich persönlich getan habe können Sie die Redirect-Regel in Verbindung mit einem Mock-Server verwenden. Hier ist eine Seite, die dies erklärt
Sie können einen Mock Server / Mock Files Endpunkt innerhalb von Requestly einrichten, anstatt etwas wie nginx oder einen lokalen Server zu verwenden, um dies zu tun. Aber das funktioniert nur für textbasierte Inhalte, nicht für Bilder

Dies würde auch jede Einrichtung auf dem lokalen Rechner des Testers umgehen. Sie müssten nur die Erweiterung installieren. Alles, was Sie tun müssten, ist, ihnen den Endpunkt für Ihren Mock-Server und die von Ihnen erstellte Umleitungsregel zu senden.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X