Jak wyświetlić historię tego, co opublikowałem POST w Google Chrome?

42

Właśnie przesłałem formularz zawierający pole tekstowe, w którym napisałem dość długi tekst. W innym polu tekstowym wpisałem datę w niewłaściwym formacie - i zamiast komunikatu o błędzie, strona internetowa zachowywała się tak, jakby mój formularz był prawidłowy, tyle że nic nie zostało zapisane.

Czy jest jakiś sposób, aby zobaczyć historię tego, co zostało opublikowane (przynajmniej w bieżącej sesji), skąd mogę odzyskać utracony tekst?

Tomas Aschan
źródło
2
Z tego powodu przyzwyczaiłem Ctrl-C'ing do wszystkiego dłużej niż zdanie. To jest tak cholernie denerwujące, kiedy to się dzieje.
Daniel Beck
5
@Daniel: W przypadku Chrome i Firefox istnieje rozszerzenie o nazwie „Lazarus”, które zapisuje wpisy formularzy.
grawity 11.01.11
@grawity Dzięki za informację. Wygląda na to, że nie dla Safari .
Daniel Beck
@grawity: Próbowałem przez pewien czas Lazarus (w przeglądarce Firefox), ale był bardzo wadliwy i częściej niż to, co jest dopuszczalne, powodował zawieszanie się całej przeglądarki.
Pomysł

Odpowiedzi:

4

Nie sądzę, że Chrome (lub jakakolwiek inna przeglądarka) zapisuje historię treści <textarea>(wejście wielowierszowe).


Jeśli formularz używa normalnego przesyłania (nie Ajax) i nie opuściłeś strony wyników, możesz wypróbować sztuczkę: Otwórz pakiet burp (oczywiście darmowa wersja), skonfiguruj swoją przeglądarkę, aby używała localhost:8080jako Serwer proxy HTTP i naciśnij Odśwież na stronie wyników. Przeglądarka zapyta, czy chcesz powtórzyć przesyłanie - które następnie należy przechwycić w zakładce „proxy” burp . (W przypadku niezabezpieczonego HTTP działałby także sniffer pakietów, taki jak Wireshark).

grawitacja
źródło
Cześć, kliknąłem Odśwież, a przeglądarka nic mnie nie zapytała. Pobrałem Burp, a 127.0.0.1:8080 rzeczywiście znajduje się na karcie Proxy. W przeglądarce Chrome, w której znajduje się formularz, musiałem otworzyć ustawienia serwera proxy i kliknąć Konfiguruj, aby dodać localhost: 8080 jako serwer proxy HTTP. Uwaga: obecnie omija * .local, 169.254 / 16
Dhruv Ghulati
23

Ok, naprawdę, musiałem sobie poradzić z tym problemem i myślę, że znalazłem niezawodne rozwiązanie:

  • po pierwsze nie zamykaj zakładki, w której utraciłeś dane posta.
  • następnie z menu narzędzi otwórz menedżera zadań chrome i znajdź pid.
  • następnie użyj hakera procesów, aby wyszukać część utraconego ciągu i kontynuuj, aż znajdziesz najdłuższe kolejne dane.
  • następnie skopiuj i wklej go do edytora tekstu.

W ten sposób mogłem dziś zapisać swoją pracę.

rad
źródło
4
!!!!!! Wow, właśnie zaoszczędziłeś mi mnóstwo frustracji. Operacja Process Hacker polega na kliknięciu prawym przyciskiem myszy procesu o odpowiednim PID i wybraniu „Utwórz plik zrzutu ...”, który tworzy ogromny plik, ale udało mi się znaleźć odpowiedni tekst.
Jason S
1
Dziękuję Ci! Straciłem ponad godzinę pracy, kiedy próbowałem zapisać post Wordpress i to był jedyny sposób, aby go odzyskać.
Eddie Loeffen,
1
Zobacz superuser.com/a/1119310/30982 dla Linux.
Elijah Lynn
9

Odpowiedź @rad działa w systemie Windows, ale nie działa w systemie Linux. Doprowadziło mnie to do następującego rozwiązania dla systemu Linux:

  1. Nie zamykaj karty
  2. Przejdź do Chrome Process Explorer za pomocą shift + esc
  3. Znajdź identyfikator procesu (PID) na karcie (np. 3982), jeśli nie widzisz kolumny identyfikatora procesu, kliknij prawym przyciskiem myszy tytuł kolumny i włącz wyświetlanie
  4. Uruchom gcore <PID>// tworzy plik core.3982 (binarny)
  5. Następnie strings core.3982 | less// Konwertuje plik binarny na ciągi do wyszukiwania, otwiera zrzut w Less
  6. Następnie wyszukaj w lessz /następnie enteri zastosowanie ni pdo następnych i poprzednich wyników.

Dzięki temu mogłem uzyskać test POST, który zaginął w Chrome w systemie Linux.

Elijah Lynn
źródło
Ach, krok # 7 nie działa w normalnym terminalu, używam Tmux, dlatego właśnie działa. Jeśli ktoś ma czas na wymyślenie lepszego kroku # 7, edytuj!
Elijah Lynn
Rozgryzłem to, szukając tam vimów.
Elijah Lynn
1
strings -nnie działał ... ale stringssam działał , a potem przesyłałem potokiem do less... ponieważ nie mam zainstalowanego vima
nmz787
Co daje strings --versionwynik? Moim jest „GNU Strings 2.24”.
Elijah Lynn
2
Miły. Niestety nie działa to w OSX ze względu na specjalną funkcję ochrony pamięci o nazwie SIP. Można to faktycznie wyłączyć, jeśli będziesz tego potrzebować w przyszłości, uruchamiając csrutil disablez systemu operacyjnego odzyskiwania
quuxman
6

Istnieje w rzeczywistości (nieco uciążliwa?) Metoda robienia tego w Chrome (i w rzeczywistości w dowolnej przeglądarce WebKit z WebInspector).

  1. Na stronie z formularzem otwórz konsolę programistyczną. Można to zrobić naciskając F12.
  2. W konsoli, która się otworzy, przejdź do Networkzakładki.
    • Opcjonalnie upewnij się, że Preserve logjest zaznaczone i filtruj według Documentslub XHR, w zależności od przypadku.
  3. Prześlij formularz Kliknij nowo utworzony wpis i przejdź do Headerszakładki. Zobaczysz swoje zgłoszenie pod Form Data.
Schizma
źródło
To nie wydaje się odpowiadać prezentacji w mojej obecnej wersji Chrome (47.0.2526.111 m). Byłoby miło dowiedzieć się, jak to zrobić.
James P.
1
@JamesPoulson Interfejs użytkownika niewiele się zmienił, ale teraz Chrome domyślnie otwiera go w panelu bocznym zamiast w wyskakującym okienku i domyślnie wyświetla wykres. Może być konieczne kliknięcie podwójnego szewronu (>>) w prawym górnym rogu, aby znaleźć kartę Sieć.
Schizm
To nie rozwiązuje problemu. Problemem jest uzyskanie danych żądania po fakcie. Działa to tylko wtedy, gdy zostało skonfigurowane przed wysłaniem żądania.
ToonAlfrink
4

Miałem trochę szczęścia w systemie Windows 10, stosując następującą odmianę innych sugestii

  1. Otwórz Menedżera zadań Chrome (naciśnij Shift + Esc)
  2. Znajdź kartę zawierającą utracony tekst (wyszukaj według nazwy), zanotuj identyfikator procesu
  3. Otwórz Menedżera zadań Windows (naciśnij Ctrl + Shift + Esc)
  4. Przejdź do zakładki szczegółów i znajdź PID, który pasuje do Twojego identyfikatora procesu
  5. Kliknij ten proces prawym przyciskiem myszy i kliknij „Utwórz plik zrzutu”
  6. Otwórz duży plik DMP, który jest tworzony w folderze C: \ Users \ nazwa użytkownika \ AppData \ Local \ Temp o nazwie chrome.dmp
  7. Wyszukaj w pliku ciągi znaków, które możesz przywołać z wprowadzonego tekstu
Matt A.
źródło
2

Byłem w systemie Windows i nic nie działało tak, jak inne odpowiedzi, ale odzyskałem utracone dane za pomocą zrzutu. Zobacz proces poniżej:

1 - po pierwsze nie zamykaj zakładki, w której utraciłeś dane posta. następnie z menu narzędzi otwórz menedżera zadań chrome i znajdź pid. 2 - Teraz otwórz menedżera zadań Windows i znajdź proces z PID, kliknij prawym przyciskiem myszy i kliknij „Utwórz plik zrzutu”, utworzy zrzut w Windows Dir C: \ Users \\ AppData \ Local \ Temp \ .DMP, to nada ci również nazwę tego samego.

Teraz otwórz plik w notatniku / Notepad ++ i wyszukaj utracony tekst

Anuj Tomar
źródło
0

Udało mi się na Windows 7 w chrome. jest to podobne do odpowiedzi Schism, ale kompletne (ponieważ problem polega na tym, że już nacisnąłeś poddać się, a potem wszystko wybuchło):

  • nie zamykaj strony
  • na stronie: otwórz narzędzia programistyczne i przejdź do zakładki sieci
  • Zaznacz wszystko wybierz cały obraz
  • wróć na stronę
  • przejdź do przodu i otrzymaj powiadomienie o ponownym przesłaniu przez Google
  • naciśnij przycisk przeładuj zgodnie z instrukcjami na stronie powiadomienia o ponownym przesłaniu
  • to albo po prostu działa, albo tekst będzie w postaci danych wezwania HTTP po tworzą obraz danych
Czad
źródło