Inhaltsverzeichnis

LiveHTTPHeaders wiederbeleben

Das Tool LiveHTTPHeaders ist ein wichtiges Tool (Firefox-Plugin) für Entwickler von Webanwendungen. Man kann damit unter anderem Posts abfangen und somit Serverausgaben debuggen, die man sonst nicht sehen könnte. Leider funktioniert der sogenannte Live HTTP Replay, also die Kernfunktion „Anfrage erneut versenden“ weder unter Windows noch unter Linux seit dem Update auf ca. Firefox 32 nicht mehr. Es tut sich einfach nichts mehr, wenn man auf den entsprechenden Button klickt.

Die Lösung des Problems (Linux)

Folgende Lösung habe ich für das Problem unter Linux gefunden. Wird so wahrscheinlich auch unter Windows laufen. Im Verzeichnis ~/.mozilla/firefox/<profilID>/extensions/<extensionIDvonLiveHTTPHeaders>/chrome1) im JAR-Archiv livehttpheaders.jar unter content die Datei LiveHTTPReplay.js bearbeiten.

In dieser Datei muss Zeile 32 bearbeitet werden:

if(!livehttpheaders) var livehttpheaders={};
if(!livehttpheaders.replay) livehttpheaders.replay={};
 
livehttpheaders.replay.live = window.arguments[0];
livehttpheaders.replay.init = function() {
  var args = window.arguments;
 
  document.getElementById("livehttpheaders.replay.method").value = args[1];
  document.getElementById("livehttpheaders.replay.url").value = args[2];
  document.getElementById("livehttpheaders.replay.version").value = args[3];
  document.getElementById("livehttpheaders.replay.headers").value = args[4]; // <- die hier (Zeile 32)
  if (args[5] != null) {
    document.getElementById("livehttpheaders.replay.post").value = livehttpheaders.replay.stringToEscape(args[5]);
    document.getElementById("livehttpheaders.replay.sendpost").checked="true";
  }
 
  livehttpheaders.replay.updatePost();
}

Die Zeile muss auf folgendes abgeändert werden.

  document.getElementById("livehttpheaders.replay.headers").value = args[4] + "If-Modified-Since: *\n";

Dann läuft LiveHTTPHeaders wieder. 8-) Zum Glück.

Fix den Fox

In neueren Firefox-Versionen setzt Mozilla darauf, nurnoch signierte Add-Ons auszuführen. Das führt dazu, dass die antiquierte LiveHTTPHeaders-Version, die nicht signiert ist, nicht läuft. Erst recht nicht, wenn man das signierte Paket verändert. Wenigstens in der Firefox Developer Editon lässt sich dieses Problem durch setzen des Registry-Keys xpinstall.signatures.required auf false lösen.

FFDE->about:config

Downloads

1) Die Extension-ID findent man, indem man in alle Extension-Verzeichnisse geht, und nach einer livehttpheaders.jar im jeweiligen chrome-Verzeichnis sucht.