Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 241781|Odpověď: 55

[Konzolový program] .NET/C# používá FiddlerCore4 k zachycení a úpravě HTTP požadavků

  [Kopírovat odkaz]
Zveřejněno 20.12.2020 13:39:53 | | | |
Nejnovější FiddlerCoreAPIFreeSetup, zachyť nový dll soubor, použijte ho po instalaci, Fiddlerova vlastní knihovna pro zpracování http interception, FiddlerCore je aktuálně dostupná jako .NET knihovna tříd, kterou může použít jakákoli .NET aplikace. FiddlerCore je navržen pro specializované aplikace, které běží bez uživatelského rozhraní, například pro automatizaci testování, nebo pro uživatelská rozhraní speciálně pro uživatelská rozhraní, do kterých Fiddler Addon nezapadá, například vizualizaci provozu WPF.

FiddlerCore nyní přešel na placenou verzi, ale před tímto poplatkem bylo v beta verzi vydáno několik nových verzí .NET standardu, které byly dostupné a neměly 30denní limit. Kompletní SDK a demo jsou k dispozici. Adresa ke stažení je následující:

FiddlerCoreAPIFree_4_6_20191_7809.zip stažení
Přihlášení k hypertextovému odkazu je viditelné.

Vytvořte nový .NET 4.6.2 konzolový projekt: HttpCapture, který odkazuje na knihovnu tříd FiddlerCore45.dll, kterou lze získat stažením jako výše.

Akce Fiddler je následující:

//
        Shrnutí:
        Tato událost se spustí po dokončení relace
        veřejná statická událost SessionStateHandler AfterSessionComplete;
        //
        Shrnutí:
        Tato událost se spustí, když Fiddler zachytí zprávu WebSocket
        veřejná statická událost EventHandler<WebSocketMessageEventArgs> OnWebSocketMessage;
        [CodeDescription("Tato událost spustí HTTPS certifikát je ověřen.")]
        veřejný statický event EventHandler<ValidateServerCertificateEventArgs> OnValidateServerCertificate;
        //
        Shrnutí:
        Tato událost se spustí, když jsou k dispozici hlavičky odpovědí
        veřejná statická událost SessionStateHandler ResponseHeadersAvailable;
        //
        Shrnutí:
        Tato událost se spustí, když jsou k dispozici hlavičky požadavků
        veřejná statická událost SessionStateHandler RequestHeadersAvailable;
        //
        Shrnutí:
        Tato událost se spustí, když Fiddler přijme odpověď serveru
        veřejná statická událost SessionStateHandler BeforeResponse;
        //
        Shrnutí:
        Tato událost se spustí, když Fiddler přijme klientský požadavek
        veřejná statická událost SessionStateHandler BeforeRequest;
        //
        Shrnutí:
        Tato událost se spustí pokaždé, když FiddlerCore čte data ze sítě pro klienta
        žádost. Všimněte si, že tato data nejsou nijak formátována a musí být parsována
        příjemcem.
        veřejný statický event EventHandler<RawReadEventArgs> OnReadRequestBuffer;
        //
        Shrnutí:
        Tato událost se spustí pokaždé, když FiddlerCore čte data ze sítě pro servery
        odpověď. Všimněte si, že tato data nejsou nijak formátována a musí být parsována
        příjemcem.
        veřejná statická událost EventHandler<RawReadEventArgs> OnReadResponseBuffer;
        [CodeDescription("Tato událost se spustí, když uživatel instruuje Fiddlera, aby vymazal cache nebo cookies.")]
        veřejná statická událost EventHandler<CacheClearEventArgs> OnClearCache;
        //
        Shrnutí:
        Synchronizujte tuto událost, aby byla upozorněna, až se FiddlerCore připojí jako systémový proxy.")]
        [CodeDescription("Synchronizujte tuto událost, aby byla oznámena, až se FiddlerCore připojí jako systémový proxy.")]
        [Zastaralé("Prosím, použijte Telerik.NetworkConnections.NetworkConnectionsManager.")]
        veřejná statická událost SimpleEventHandler FiddlerAttach;
        //
        Shrnutí:
        Synchronizujte tuto událost, aby byla upozorněna, až se FiddlerCore odpojí jako systémový proxy.
        [CodeDescription("Synchronizujte tuto událost, aby bylo oznámeno, až se FiddlerCore odpojí jako systémový proxy.")]
        [Zastaralé("Prosím, použijte Telerik.NetworkConnections.NetworkConnectionsManager.")]
        veřejná statická událost SimpleEventHandler FiddlerDetach;
        [CodeDescription("Tato událost se spustí, když se zobrazí uživatelské upozornění. Viz CONFIG. Vlastnost QuietMode.")]
        veřejná statická událost<NotificationEventArgs> EventHandler OnNotification;
        //
        Shrnutí:
        Tato událost se spustí, když Fiddler vygeneruje chybovou odpověď
        veřejná statická událost SessionStateHandler BeforeReturningError;
        //
        Shrnutí:
        Spouště se pokaždé, když Fiddler úspěšně přijme TCP/IP spojení
        veřejná statická událost EventHandler<ConnectionEventArgs> AfterSocketAccept;
        //
        Shrnutí:
        Spouště se pokaždé, když Fiddler úspěšně naváže TCP/IP spojení
        veřejná statická událost EventHandler<ConnectionEventArgs> AfterSocketConnect;

Běžně používané události jsou BeforeRequest, BeforeResponse a AfterSessionComplete.

Pokud chcete blokovat HTTPS požadavky, musíte nainstalovat certifikát, kód je následující:

Přiložen je kód pro určení, zda certifikát existuje:

Výsledky, kterých jsme dosáhli, byly následující:

1. Zachyceníwww.itsvse.comŽádost o stránku, která přímo vrací část JSON obsahu.
2. Zablokujte down.itsvse.com stránku a po odpovědi nahradit řetězec "Uploaded by" za "Uploaded by"

Kód je následující:

Poté nastavte ie agenta ručně na 127.0.0.1:9099, také s nastavením kódu, následovně:

Nastavte systémový proxy pomocí .NET/C#
https://www.itsvse.com/thread-9495-1-1.html

Vizualizace jsou následující:



Poznámka: Při úpravě obsahu po odpovědi je potřeba nastavit relaci v události BeforeRequestsession.bBufferResponse = true;, jinak nemůžete upravovat obsah odpovědí!

Stažení zdrojového kódu:

Turisté, pokud chcete vidět skrytý obsah tohoto příspěvku, prosímOdpověď


(Konec)





Předchozí:ASP.NET Online dekompilace současného zdrojového kódu webu MVC
Další:Formát požadavku není rozpoznán, protože URL nečekaně končí na "/itsvse".
 Pronajímatel| Zveřejněno 30.06.2023 20:07:39 |
Zveřejněno 06.03.2022 10:33:30 |
Velmi dobře                       
 Pronajímatel| Zveřejněno 28.06.2023 17:11:09 |
Vyřešeno problém, že Fiddler nemohl procházet lokální localhost, síťové požadavky 127.0.0.1
https://www.itsvse.com/thread-9137-1-1.html
Zveřejněno 23.12.2020 20:51:15 |
Při úpravě obsahu po odpovědi
Zveřejněno 25.02.2021 19:39:28 |

Při úpravě obsahu po odpovědi
Zveřejněno 01.03.2021 13:03:56 |
jmenný prostor FiddlerCoreStartupSettingsBuilder
Zveřejněno 13.03.2021 15:15:48 |
Naučte se zdrojový kód
Zveřejněno 31.03.2021 17:15:20 |
Prostudujte to a podívejte se na to
Zveřejněno 07.04.2021 18:09:31 |
Po celodenním hledání jsem konečně našel takovou, která mi vyhovovala
Zveřejněno 05.05.2021 16:28:11 |
Přesun proxy ie 127.0.0.1:9099 je také možný
Zveřejněno 04.06.2021 11:27:23 |
333333333333333333
Zveřejněno 21.06.2021 0:33:29 |
session.bBufferResponse = true; Je nutné to nastavit?
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com