Fiddlerská verze:
Progress Telerik Fiddler Web Debugger v5.0.20182.28034 pro .NET 4.6.1
Built: 2018年6月27日
1: Nejprve používáme vs2017 k vytvoření nového projektu knihovny .NET 4.0 (To je špatně, jak řeknu níže, musíte vytvořit projekt ve verzi 4.6.1, jinak kompilace selže), jak je uvedeno níže:
Protože moje verze Fiddleru je poměrně vysoká, požadavky na .NET verzi budou vyšší a chyba bude při kompilaci a generování verze .NET 4.0 hlášena následovně:
1>------ Veškerá rekonstrukce byla zahájena: Projekt: fiddler-plugin-demo, Konfigurace: Debugovat jakýkoli CPU ------ 1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2106,5): varování MSB3274: Nepodařilo se vyřešit hlavní referenci "Fiddler", protože byla zaměřena na ". NETFramework, Version=v4.6.1". Tato verze rámce je vyšší než současný cílový rámec." NETFramework,Version=v4.0"。 1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2106,5): varování MSB3268: Nepodařilo se vyřešit hlavní referenci "Fiddler", Protože má nepřímou závislost na frameworkovém assembleru "System.Net.Http, version=4.0.0.0, culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", který v aktuálním cílovém frameworku není parsován. “. NETFramework,Version=v4.0"。 Pro vyřešení tohoto problému odstraňte odkaz na "Fiddler" nebo přesměrujte cíl aplikace na verzi frameworku, která obsahuje "System.Net.Http, version=4.0.0.0, culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". 1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2106,5): varování MSB3275: Nepodařilo se vyřešit hlavní referenci "Fiddler" kvůli problému s assemblerem analytics, version=1.0.20182.27266, culture=neutral, PublicKeyToken=2b2cea67609c9510 "má nepřímé závislosti a sestava je zaměřena na ". NETFramework, Version=v4.5" framework. Tato verze rámce je vyšší než současný cílový rámec." NETFramework,Version=v4.0"。 1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2106,5): varování MSB3275: Nepodařilo se vyřešit hlavní referenci "Fiddler" kvůli problému s assemblerem newtonsoft.json, version=11.0.0.0, culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed"má nepřímé závislosti a assembler je zaměřen proti ". NETFramework, Version=v4.5" framework. Tato verze rámce je vyšší než současný cílový rámec." NETFramework,Version=v4.0"。 1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2106,5): varování MSB3275: Nepodařilo se vyřešit hlavní referenci "Fiddler" kvůli problému s assemblerem GA. analytics.monitor, version=1.0.20182.27266, culture=neutral, PublicKeyToken=2b2cea67609c9510 "má nepřímou závislost, se kterou je sestava spojena". NETFramework, Version=v4.5" framework. Tato verze rámce je vyšší než současný cílový rámec." NETFramework,Version=v4.0"。 1>C:\Users\itsvse_pc\Documents\Visual Studio 2017\Projects\fiddler-plugin-demo\fiddler-plugin-demo\Properties\AssemblyInfo.cs(37,12,37,19): chyba CS0246: Nepodařilo se najít název typu nebo jmenného prostoru" Fiddler" (chybí nějaký návod nebo assembler reference?) 1>C:\Users\itsvse_pc\Documents\Visual Studio 2017\Projects\fiddler-plugin-demo\fiddler-plugin-demo\DemoExtention.cs(1,7,1,14): chyba CS0246: Nepodařilo se najít název typu nebo jmenného prostoru "Fiddler" (chybí Použití směrnice nebo assemblerového odkazu?) 1>C:\Users\itsvse_pc\Documents\Visual Studio 2017\Projects\fiddler-plugin-demo\fiddler-plugin-demo\DemoExtention.cs(10,34,10,45): chyba CS0246: Nepodařilo se najít název typu nebo jmenného prostoru "IAutoTamper" ( Chybí nějaký návod pro použití nebo assembler reference?) 1>C:\Users\itsvse_pc\Documents\Visual Studio 2017\Projects\fiddler-plugin-demo\fiddler-plugin-demo\DemoExtention.cs(19,44,19,51): chyba CS0246: Nepodařilo se najít název typu nebo jmenného prostoru "Session" (chybí Použití směrnice nebo assemblerového odkazu?) 1>C:\Users\itsvse_pc\Documents\Visual Studio 2017\Projects\fiddler-plugin-demo\fiddler-plugin-demo\DemoExtention.cs(24,45,24,52): chyba CS0246: Nepodařilo se najít název typu nebo jmenného prostoru "Session" (chybí Použití směrnice nebo assemblerového odkazu?) 1>C:\Users\itsvse_pc\Documents\Visual Studio 2017\Projects\fiddler-plugin-demo\fiddler-plugin-demo\DemoExtention.cs(29,45,29,52): chyba CS0246: Nepodařilo se najít název typu nebo jmenného prostoru "Session" (chybí Použití směrnice nebo assemblerového odkazu?) 1>C:\Users\itsvse_pc\Documents\Visual Studio 2017\Projects\fiddler-plugin-demo\fiddler-plugin-demo\DemoExtention.cs(34,46,34,53): chyba CS0246: Nepodařilo se najít název typu nebo jmenného prostoru "Session" (chybí). Použití směrnice nebo assemblerového odkazu?) 1>C:\Users\itsvse_pc\Documents\Visual Studio 2017\Projects\fiddler-plugin-demo\DemoExtention.cs(39,44,39,51): chyba CS0246: Nepodařilo se najít název typu nebo jmenného prostoru "Session" (chybí Použití směrnice nebo assemblerového odkazu?) ========== Regenerujte všechny: 0 uspěje, 1 selže a 0 ========== přeskočeno
Řešením je přejít na .NET 4.6.1!
2: Přidejte fiddler.exe odkaz do Průzkumníka řešení, můj instalační adresář Fiddlera je: C:\Users\itsvse_pc\AppData\Local\Programs\Fiddler, jak je uvedeno níže:
3: Nastavte minimální verzi Fiddleru, kterou plugin běží
Přidejte atribut Fiddler.RequiredVersion do AssemblyInfo.cs souboru vašeho projektu (a kamkoliv jinde v kódu).
4: Vytvořte nový ovládací líder Fiddler v UI
Musíte přidat odkaz na assembler System.Windows.Forms
Začněte tím, že do svého projektu přidáte uživatelskou kontrolu s názvem TestControl.cs (libovolné), jak je vidět na obrázku níže:
Poté umístěte náhodný ovládací prvek Button na uživatelský ovládací panel a napište jednoduchý kód události řádku kliknutí:
5: Vytvořit novou třídu rozšíření DemoExtension.
Třída DemoExtensionion dědí rozhraní IAutoTamper,Rozhraní IAutoTamper dědí rozhraní IFiddlerExtensionVšechny pluginy, které implementují rozhraní IAutoTamper, budou volány u každého http/https požadavku nebo odpovědi, takže je lze použít k převzetí nebo úpravě dat HTTP / https odpovědí na požadavek.
Poznámka: Metoda tohoto rozhraní se na pozadí nazývá ne-UI vlákno, pokud chcete UI aktualizovat, můžete použít metodu Invoke nebo BeginInvoke k aktualizaci UI. Všechny metody IAutoTamper lze spustit před událostí OnLoad.
Kód je následující:
6: Fiddler načítá plugin
Po naprogramování a generování zkopírujte oba soubory fiddler-plugin-demo.dll a fiddler-plugin-demo.pdb pod adresářem Debug do složky scrip{filter}ts v našem instalačním adresáři fiddler.
Můj vlastní je: C:\Users\itsvse_pc\AppData\Local\Programs\Fiddler\scrip{filter}ts složka
Nakonec restartujeme a otevřeme Fiddlera, kde vidíme naše ovládací prvky na záložce, jak je vidět níže:
7: Povolit automatické nasazení pluginu do adresáře pluginů Fiddler
Pokaždé, když plugin upravíme, musíme dll znovu zkopírovat do složky scrip{filter}ts, tento problém můžeme vyřešit pomocí události generace VS, překompilujeme generaci, VS automaticky zkopíruje naši dll do adresáře scrip{filter}ts a vyplní následující příkaz v příkazové řádku pozdější generace událostí:
Jak je uvedeno níže:
Testováno na běžné používání.
Nakonec přiložte zdrojový kód:
Turisté, pokud chcete vidět skrytý obsah tohoto příspěvku, prosím Odpověď
|