Sitzungswiederherstellung - dringende Hilfe! Danke!

  • Zitat von buuh

    Hier hab ich vll noch was gefunden, aber ich weis nicht, ob dir das helfen kann:
    https://support.mozilla.org/en-US/questions/947856
    Hier hat sich jemand dem Firebug/Inspector bedient und eine eigene Funktion geschrieben, mit der es wohl irgendwie geht. Der Beitrag ist sogar noch "relativ" aktuell, vom 21.01.2013 glaube ich. Versuchen kannste es ja mal.

    Das funktioniert auf gar keinen Fall in Firefox, Firebug hätte also nicht installiert werden brauchen. Generell geht es auch ohne Erweiterung, Firefox liefert alle benötigten Werkzeuge von Haus aus mit. Das funktioniert alleine schon deswegen nicht, weil node.innerText nicht dem Standard entspricht und von Firefox gar nicht unterstützt wird. Das ist proprietärer Internet Explorer-Kram. Der Code ist ein Ansatz, aber halt nicht zu Ende gedacht. Ich hab das mal übernommen:

    Zunächst einmal brauchen wir ein Äquivalent für node.innerText. Das naheliegendste (es gibt durchaus Unterschiede, das ist nicht 1:1 dasselbe) ist node.textContent, das erfüllt hier aber genau seinen Zweck.

    Code
    eval('var obj='+document.body.textContent);
    for (var i = 0; i < obj.windows[0].tabs.length; i++) {
        var ent = obj.windows[0].tabs[i].entries;
        var last = ent[ent.length-1];
        document.write("<a href="+last.url+">"+last.url+"</a>
    ");
    }

    Und das kann über die JavaScript-Umgebung ausgeführt werden (Shift + F4). Aber das wird so auch nicht funktionieren, das erlaubt Firefox aus Sicherheitsgründen nicht.

    Zitat

    Exception: The operation is insecure.

    Das scheitert am document.write(), das können wir nicht machen bei einem über das file-Protokoll geöffneten Datei. Also stattdessen alles schön in ein Array packen und ein Popup erstellen, in welchem wir das ausgeben. Et voilà, das funktioniert in Firefox:

    Allerdings auch nur für das erste Fenster. Bei mehreren geöffneten Fenstern reicht das auch wieder nicht. Dafür dürfen wir halt nicht nur windows[0] auslesen, sondern müssen alle windows lesen. Außerdem hab ich die Anzahl der Elemente aus Performancegründen aus der Schleife herausgenommen, das ist unsinnig, die in jedem Schleifendurchgang neu zu lesen, kostet nur extra Zeit. Nicht, dass es in dieser Größenordnung überhaupt relevant wäre, aber man sollte sich das gleich richtig angewöhnen. Hier nun der endgültige Code:

    Die Datei sessionstore.js in Firefox öffnen, Shift + F4 drücken, dort den letzten Code reinkopieren und ausführen. Auf OS X ist das Cmd + R, auf Windows und Linux Strg + R.

  • hab zwar nur die hälfte verstanden (sorry bin nicht der schnellste), aber ich habs mal versucht.

    nicht ganz sicher ob ich alles richtig gemacht habe, aber wenn ich dann ausführen drück kommt folgende meldung:

    /*
    Exception: window is undefined
    @Scratchpad/1:14
    */

  • Zitat von nix-verstehen

    hab zwar nur die hälfte verstanden (sorry bin nicht der schnellste), aber ich habs mal versucht

    Das ist schon okay, dein gewählter Forenname hat darauf ja vorbereitet. :lol: Ne, aber im Ernst, das musst du auch nicht verstehen. Ich hab die "Lösung" aus dem verlinkten Artikel genommen und quasi "live" zum Laufen gebracht und mein Vorgehen hier kommentiert, falls das wen interessiert. Wichtig ist eigentlich nur das Endergebnis.

    Also du hast die Datei sessionstore.js in Firefox geöffnet und dieser Tab war auch der, den du gesehen hast, als du den Code in die JavaScript-Umgebung kopiert und ausgeführt hast? Was du da ausführst, wird nämlich immer im Kontext des gerade aktiven Tabs ausgeführt. Das heißt, wenn du das gemacht hast und gerade das Camp Firefox-Forum offen war, weil du hier gelesen hast, was du machen musst, dann konnte es nicht funktionieren. Du musst dabei also die sessionstore.js im Firefox-Fenster sehen.

  • In der Woche, wo er damit nutzlos rumgekaspert hat, hätte er das schon längst jemandem schicken können, zB RoadRunner (Admin) - aber das war dem Herrn ja nicht recht, weil hochgeheime Daten drin stehen sollen. Alle sinnvollen Optionen wurden verworfen, deswegen antwortet auch niemand mehr, warum auch? Inzwischen halte ich sein Verhalten für mehr als albern.

  • ja. habs eben noch mal versucht.
    hab es auch mit einer anderen neuen (kleineren ) sessionstore.js versucht.

    hab sogar alle tabs zu gemacht nur den mit der ssionstore.js offen gelassen. (hab nur einen anderen browser offen / chrome).

    es kommt aber immer die fehlermeldung. nur die beiden zahlen änder sich immer.


    @ bernd: mag ja sein, dass heute in zeiten facebook usw. alles öffentlich machen möchte, aber bitte respektiere doch, wenn ich mein leben nicht der ganzen welt zugänglich machen will. könnte ja auch z.b. sein, dass da meine pornosamlung der letzten 10 jahre drauf ist oder ähnliches....
    und wen du mir sagst, was es bringt wenn ich die datei jemanden schicke? was kann der machen, was er mir hier nicht sagen kann? und damit auch leute für später hilft die mal das problem haben.
    dafür ist doch das forum da. sonst könnten wir ja alles gleich per mail klären.

    also falls jemand eine "wunderwaffe" hat, die nur bei ihm auf dem rechner geht und damit mir meine datei wieder herstellen kann, bitte melden. würde mich dann aber echt interessieren, warum die dann nur bei einem einzelnen mensch auf der welt geht. und somit allen anderen unzugänglich. gibt ja sicher irgendwann noch mal jemand mit einem ähnlichen problem.


    deswegen freu ich mich natürlich immer noch über wirkliche hilfe. danke.

  • dein code wie folgt:

    "
    eval('var obj='+document.body.textContent);
    var arr = [];

    var windowsLength = obj.windows.length;
    for (var j = 0; j < windowsLength; j++) {
    var windowLength = obj.windows[j].tabs.length;
    for (var i = 0; i < windowLength; i++) {
    var ent = obj.windows[j].tabs[i].entries;
    var last = ent[ent.length-1];
    arr.push("<a href="+last.url+">"+last.url+"</a>");
    }
    }

    var window = window.open("data:text/html," + encodeURIComponent(arr.join('<br />')),
    "_blank", "width=700,height=700");
    window.focus();
    "

    hab ich eingefügt.

  • sessionstore.js ins Fenster (Tab), JS-Umgebung geöffnet, Code rein, Strg+R - nichts, auch keine Fehlermeldung. HTH

  • Mir ist da ein Fehler unterlaufen, die letzten Zeilen mit var window fehlten mir, mist!

    Und jetzt kommt

    Zitat


    /*
    Exception: window is undefined
    @Scratchpad/2:14
    */


    Popups ja, NoScript sagt auch nichts, aber keinerlei Meldung wie du meinst. Ich sollte ein neues Profil nehmen...

    Und da kommt auch

    Zitat


    /*
    Exception: window is undefined
    @Scratchpad/1:14
    */

  • @ bernd: danke dass du hier doch konstruktiv mithilfst.

    so funktioniert es jetzt auch bei mir. allerdings hab ich das nun erst mal mit einer kleinen datei versucht. jetzt versuch ich es gleich mal mit der großen um die es geht....

  • also ich würds ja gern versuchen.... das problem ist, wenn ich die große datei in firefox öffnen will, friert der meist ein. das hatte ich ja vorher schon mal beschrieben.
    eventuell ist die datei zu groß oder....

    würde die datei ja auch gern mal teilen, aber dazu müsste ich halt den aufbau der sessionstore.js wissen (siehe anderes posting von mir)

  • Zitat

    ich würde eine prämie von 50 € aussetzen, wer es schafft mein problem /sitzung wieder herzustellen.


    Nichts für ungut, aber du machst dich grad sehr unglaubwürdig und vollkommen zum Brot.
    Erst deine Paranoia, dass niemand diese Datei sehen darf - und dann so ein Klops. Hart lächerlich.

  • wer hier lächerlich ist und sich zum brot macht, ist ja recht eindeutig.

    wenn dich mein problem nicht interessiert, dann such dir doch besser eine andere freizeitbeschäftigung als nur unsinn zu schreiben. hast du denn nichts zutun?
    es gibt auch ein guten spruch für dich. wenn man keine ahnung hat, einfach mal....
    gilt im übrigen auch dafür, wenn man nichts beitragen kann.


    alle anderen die wie gesagt wirklich helfen wollen, dank ich bereits jetzt schon und mein angebot steht natürlich. zahle also jedem 50 € wer eine lösung hat. danke!

  • Also ich brauch es nicht nach Nuhr halten, ich habe mich nicht angestellt...

    PS an dem Punkt zur Anzeige der sessionstore.js waren wir leider schon, mit dem Erfolg gleich Null, der Kunde hat es weder noch gebacken bekommen noch wollte er warten, bis seine 60mb analysiert waren.

  • leider immer noch keine antwort auf meine frage. ich suche nichts, was mir automatisch die datei ausliest oder ähnliches. (weil das wohlbei meiner datei nicht geht / eventuell zum teil defekt)
    ich würde gerne den aufbau verstehen um manuell wieder an meine tabs zu kommen.

    weiß den wirklich niemand wie diese aufgebaut ist (mit meinen google -kenntnissen weiß es google auch nicht).

    also vielleicht versteht mich ja auch keiner oder ich drücke mich undeutlich aus. ich versuchs noch mal:

    meine datei fängt z.b. so an:
    "{"windows":[{"tabs":[{"entries":[{"url":"about:sessionrestore","formdata":{"id":{"sessionData":{"windows":[{"tabs":[{"entries":[{"url":"about:sessionrestore","title":"Sitzungswiederherstellung","ID........ usw."

    nun interessiert mich was das genau bedeutet, wann wo, wie eine url anfängt / welches die historie in dem tab ist 8wird ja anscheind auch gespeichert) usw.. so dass ich mir manuell mein tab wiederherstellen kann.

    so könnte ich auch vielleicht versuchen einen teil von der datei herauszunehmen / zu löschen, der vielleicht zerschossen wurde, um somit zu mindestens den anderen teil dann wiederherstellen zu lassen.

    danke.