Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 241781|Svar: 55

[Konsolprogram] .NET/C# använder FiddlerCore4 för att avlyssna och ändra HTTP-förfrågningar

  [Kopiera länk]
Publicerad på 2020-12-20 13:39:53 | | | |
Den senaste FiddlerCoreAPIFreeSetup, fånga den nya dll-filen, använd den efter installation, Fiddlers http-anpassade interceptionsbehandlingsbibliotek, FiddlerCore, finns för närvarande tillgängligt som ett .NET-klassbibliotek, vilket kan användas av vilken .NET-applikation som helst. FiddlerCore är designat för dedikerade applikationer som körs utan användargränssnitt, såsom testautomatisering eller användargränssnitt specifikt för användargränssnitt som Fiddler Addon inte passar in, såsom WPF-trafikvisualisering.

FiddlerCore har nu gått över till betalt, men innan avgiften släpptes flera nya versioner av .NET-standarden i beta, vilka fanns tillgängliga och inte hade någon 30-dagarsgräns. Hela SDK:n och demon finns tillgängliga. Nedladdningsadressen är följande:

FiddlerCoreAPIFree_4_6_20191_7809.zip nedladdning
Inloggningen med hyperlänken är synlig.

Skapa ett nytt .NET 4.6.2-konsolprojekt: HttpCapture, som refererar till FiddlerCore45.dll-klassbiblioteket, vilket kan erhållas genom att ladda ner det enligt ovan.

Fiddler-evenemanget är som följer:

//
        Sammanfattning:
        Denna händelse aktiveras när en session har avslutats
        publik statisk händelse SessionStateHandler AfterSessionSessionComplete;
        //
        Sammanfattning:
        Denna händelse utlöses när Fiddler fångar ett WebSocket-meddelande
        publik statisk händelse EventHandler<WebSocketMessageEventArgs> OnWebSocketMessage;
        [CodeDescription("Denna händelse utlöser ett HTTPS-certifikat som valideras.")]
        publik statisk händelse EventHandler<ValidateServerCertificateEventArgs> OnValidateServerCertificate;
        //
        Sammanfattning:
        Denna händelse utlöses när Response Headers är tillgängliga
        offentlig statisk händelse SessionStateHandler ResponseHeadersAvailable;
        //
        Sammanfattning:
        Denna händelse aktiveras när Request Headers finns tillgängliga
        publik statisk händelse SessionStateHandler RequestHeadersAvailable;
        //
        Sammanfattning:
        Denna händelse aktiveras när ett serversvar tas emot av Fiddler
        offentlig statisk händelse SessionStateHandler BeforeResponse;
        //
        Sammanfattning:
        Denna händelse aktiveras när en klientförfrågan tas emot av Fiddler
        offentlig statisk händelse SessionStateHandler BeforeRequest;
        //
        Sammanfattning:
        Denna händelse utlöses varje gång FiddlerCore läser data från nätverket för klientens
        begäran. Observera att denna data inte är formaterad på något sätt och måste tolkas
        av mottagaren.
        publik statisk händelse<RawReadEventArgs> EventHandler OnReadRequestBuffer;
        //
        Sammanfattning:
        Denna händelse utlöses varje gång FiddlerCore läser data från nätverket för serverns
        svar. Observera att denna data inte är formaterad på något sätt och måste tolkas
        av mottagaren.
        publik statisk händelse EventHandler<RawReadEventArgs> OnReadResponseBuffer;
        [CodeDescription("Denna händelse aktiveras när användaren instruerar Fiddler att rensa cachen eller cookies.")]
        publik statisk händelse EventHandler<CacheClearEventArgs> OnClearCache;
        //
        Sammanfattning:
        Synkronisera denna händelse för att bli meddelad när FiddlerCore har anslutit sig som systemproxy.")]
        [CodeDescription("Synkronisera denna händelse för att bli meddelad när FiddlerCore har anslutit sig som systemproxy.")]
        [Obsolete("Vänligen, använd Telerik.NetworkConnections.NetworkConnectionsManager.")]
        publik statisk händelse SimpleEventHandler FiddlerAttach;
        //
        Sammanfattning:
        Synkronisera denna händelse för att bli meddelad när FiddlerCore har kopplat bort som systemproxy.
        [CodeDescription("Synkronisera denna händelse för att bli meddelad när FiddlerCore har kopplat bort som systemproxy.")]
        [Obsolete("Vänligen, använd Telerik.NetworkConnections.NetworkConnectionsManager.")]
        publik statisk händelse SimpleEventHandler FiddlerDetach;
        [CodeDescription("Denna händelse utlöses när en användarnotis skulle visas. Se KONFIGURATION. QuietMode-egenskap.")]
        offentlig statisk händelse EventHandler<NotificationEventArgs> OnNotification;
        //
        Sammanfattning:
        Denna händelse utlöses när ett felsvar genereras av Fiddler
        publik statisk händelse SessionStateHandler BeforeReturningError;
        //
        Sammanfattning:
        Avfyras varje gång Fiddler framgångsrikt accepterar en TCP/IP-anslutning
        publik statisk händelse EventHandler<ConnectionEventArgs> AfterSocketAccept;
        //
        Sammanfattning:
        Avfyras varje gång Fiddler lyckas etablera en TCP/IP-anslutning
        publik statisk händelse EventHandler<ConnectionEventArgs> AfterSocketConnect;

Vanligt använda händelser är BeforeRequest, BeforeResponse och AfterSessionComplete.

Om du vill blockera HTTPS-förfrågningar måste du installera ett certifikat, koden är följande:

Bifogad är koden för att avgöra om certifikatet existerar:

De resultat vi uppnådde var följande:

1. Avlyssnawww.itsvse.comWebbplatsförfrågan, som returnerar ett JSON-innehåll direkt.
2. Blockera down.itsvse.com sida, och efter svaret, byt ut strängen "Uploaded by" med "Uploaded by"

Koden är följande:

Ställ sedan in IE-agenten 127.0.0.1:9099 manuellt, även med kodinställningarna, enligt följande:

Ställ in systemets IE-proxy med .NET/C#
https://www.itsvse.com/thread-9495-1-1.html

Renderingarna är följande:



Obs: När du ändrar innehållet efter svaret behöver du skapa en session i BeforeRequest-händelsensession.bBufferResponse = sann;, annars kan du inte ändra svarsinnehållet!

Källkodsnedladdning:

Turister, om ni vill se det dolda innehållet i detta inlägg, snällaSvar


(Slut)





Föregående:ASP.NET MVC online-dekompilering av den aktuella webbplatsens källkod
Nästa:Förfrågningsformatet känns inte igen eftersom URL:en oväntat slutar på "/itsvse".
 Hyresvärd| Publicerad på 2023-06-30 20:07:39 |
Om certifikatet:

Publicerad på 2022-03-06 10:33:30 |
Väldigt bra                       
 Hyresvärd| Publicerad på 2023-06-28 17:11:09 |
Löste problemet att Fiddler inte kunde crawla lokala localhost, 127.0.0.1 nätverksförfrågningar
https://www.itsvse.com/thread-9137-1-1.html
Publicerad på 2020-12-23 20:51:15 |
När innehållet ändras efter svaret
Publicerad på 2021-02-25 19:39:28 |

När innehållet ändras efter svaret
Publicerad på 2021-03-01 13:03:56 |
namnrymden FiddlerCoreStartupSettingsBuilder
Publicerad på 2021-03-13 15:15:48 |
Lär dig källkoden
Publicerad på 2021-03-31 17:15:20 |
Studera det och titta på det
Publicerad på 2021-04-07 18:09:31 |
Efter att ha letat en hel dag hittade jag äntligen en som passade mina behov
Publicerad på 2021-05-05 16:28:11 |
Att flytta ie-proxyn 127.0.0.1:9099 är också möjligt
Publicerad på 2021-06-04 11:27:23 |
333333333333333333
Publicerad på 2021-06-21 00:33:29 |
session.bBufferResponse = sann; Är det nödvändigt att ställa in den?
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com