Versi Fiddler:
Kemajuan Telerik Fiddler Web Debugger v5.0.20182.28034 untuk .NET 4.6.1
Built: 2018年6月27日
1: Pertama, kami menggunakan vs2017 untuk membuat proyek pustaka .NET 4.0 baru (Ini salah, seperti yang akan saya katakan di bawah ini, Anda perlu membangun proyek 4.6.1, jika tidak, kompilasi akan gagal), seperti yang ditunjukkan di bawah ini:
Karena versi fiddler saya relatif tinggi, persyaratan untuk versi .NET akan lebih tinggi, dan kesalahan akan dilaporkan sebagai berikut saat mengkompilasi dan membuat versi .NET 4.0:
1>------ Semua pembangunan ulang telah dimulai: Proyek: fiddler-plugin-demo, Konfigurasi: Debug CPU apa pun ------ 1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2106,5): peringatan MSB3274: Gagal menyelesaikan referensi utama "Fiddler" karena ditargetkan pada ". NETFramework, Versi=v4.6.1". Versi kerangka kerja ini lebih tinggi dari kerangka kerja target saat ini". NETFramework,Versi=v4.0"。 1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2106,5): peringatan MSB3268: Gagal menyelesaikan referensi utama "Fiddler", Karena memiliki dependensi tidak langsung pada rakitan kerangka kerja "System.Net.Http, version=4.0.0.0, culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", yang gagal diurai dalam kerangka kerja target saat ini. “. NETFramework,Versi=v4.0"。 Untuk mengatasi masalah ini, hapus referensi ke "Fiddler" atau alihkan target aplikasi ke versi kerangka kerja yang berisi "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): peringatan MSB3275: Gagal menyelesaikan referensi utama "Fiddler" karena memiliki masalah dengan perakitan analytics, version=1.0.20182.27266, culture=neutral, PublicKeyToken=2b2cea67609c9510 "memiliki dependensi tidak langsung, dan rakitan diarahkan ke ". NETFramework, Kerangka kerja Version=v4.5". Versi kerangka kerja ini lebih tinggi dari kerangka kerja target saat ini". NETFramework,Versi=v4.0"。 1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2106,5): peringatan MSB3275: Gagal menyelesaikan referensi utama "Fiddler" karena memiliki masalah dengan perakitan newtonsoft.json, version=11.0.0.0, culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed"memiliki dependensi tidak langsung, dan rakitan diarahkan terhadap ". NETFramework, Kerangka kerja Version=v4.5". Versi kerangka kerja ini lebih tinggi dari kerangka kerja target saat ini". NETFramework,Versi=v4.0"。 1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2106,5): peringatan MSB3275: Gagal menyelesaikan referensi utama "Fiddler" karena memiliki masalah dengan perakitan GA. analytics.monitor, version=1.0.20182.27266, culture=neutral, PublicKeyToken=2b2cea67609c9510 "memiliki dependensi tidak langsung yang terkait dengan rakitan". NETFramework, Kerangka kerja Version=v4.5". Versi kerangka kerja ini lebih tinggi dari kerangka kerja target saat ini". NETFramework,Versi=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): kesalahan CS0246: Gagal menemukan jenis atau nama namespace" Fiddler" (apakah ada instruksi penggunaan atau referensi perakitan yang hilang?) 1>C:\Users\itsvse_pc\Documents\Visual Studio 2017\Projects\fiddler-plugin-demo\fiddler-plugin-demo\DemoExtention.cs(1,7,1,14): kesalahan CS0246: Gagal menemukan nama jenis atau namespace "Fiddler" (hilang menggunakan referensi direktif atau perakitan?) 1>C:\Users\itsvse_pc\Documents\Visual Studio 2017\Projects\fiddler-plugin-demo\fiddler-plugin-demo\DemoExtention.cs(10,34,10,45): kesalahan CS0246: Gagal menemukan jenis atau nama namespace "IAutoTamper" ( Apakah ada referensi penggunaan atau perakitan yang hilang?) 1>C:\Users\itsvse_pc\Documents\Visual Studio 2017\Projects\fiddler-plugin-demo\fiddler-plugin-demo\DemoExtention.cs(19,44,19,51): kesalahan CS0246: Gagal menemukan jenis atau nama namespace "Session" (hilang menggunakan referensi direktif atau perakitan?) 1>C:\Users\itsvse_pc\Documents\Visual Studio 2017\Projects\fiddler-plugin-demo\fiddler-plugin-demo\DemoExtention.cs(24,45,24,52): kesalahan CS0246: Gagal menemukan jenis atau nama namespace "Sesi" (hilang menggunakan referensi direktif atau perakitan?) 1>C:\Users\itsvse_pc\Documents\Visual Studio 2017\Projects\fiddler-plugin-demo\fiddler-plugin-demo\DemoExtention.cs(29,45,29,52): kesalahan CS0246: Gagal menemukan jenis atau nama namespace "Sesi" (hilang menggunakan referensi direktif atau perakitan?) 1>C:\Users\itsvse_pc\Documents\Visual Studio 2017\Projects\fiddler-plugin-demo\fiddler-plugin-demo\DemoExtention.cs(34,46,34,53): kesalahan CS0246: Gagal menemukan jenis atau nama namespace "Session" (hilang.) menggunakan referensi direktif atau perakitan?) 1>C:\Users\itsvse_pc\Documents\Visual Studio 2017\Projects\fiddler-plugin-demo\DemoExtention.cs(39,44,39,51): kesalahan CS0246: Gagal menemukan jenis atau nama namespace "Session" (hilang menggunakan referensi direktif atau perakitan?) ========== Meregenerasi semua: 0 berhasil, 1 gagal, dan 0 ========== dilewati
Solusinya adalah mengubah ke .NET 4.6.1!
2: Tambahkan referensi fiddler.exe di Penjelajah Solusi, direktori instalasi biola saya adalah: C:\Users\itsvse_pc\AppData\Local\Programs\Fiddler, seperti yang ditunjukkan di bawah ini:
3: Atur versi minimum fiddler yang dijalankan plugin
Tambahkan atribut Fiddler.RequiredVersion ke file AssemblyInfo.cs proyek Anda (dan di mana pun dalam kode Anda).
4: Buat kontrol UI tab Fiddler baru
Anda perlu menambahkan referensi ke rakitan System.Windows.Forms
Mulailah dengan menambahkan kontrol pengguna ke proyek Anda bernama TestControl.cs (arbitrary), seperti yang ditunjukkan pada gambar di bawah ini:
Kemudian tempatkan kontrol Tombol acak di atas kontrol pengguna dan tulis baris sederhana kode peristiwa klik:
5: Membuat kelas ekstensi DemoExtention baru
DemoExtention mewarisi antarmuka IAutoTamper,Antarmuka IAutoTamper mewarisi antarmuka IFiddlerExtensionSemua plugin yang mengimplementasikan antarmuka IAutoTamper akan dipanggil pada setiap permintaan atau respons http/https, sehingga dapat digunakan untuk membajak atau memodifikasi data respons permintaan http/https.
Catatan: Metode antarmuka ini dipanggil di latar belakang, utas non-UI, jika Anda ingin memperbarui UI, Anda dapat menggunakan metode Invoke atau BeginInvoke untuk memperbarui UI. Semua metode IAutoTamper dapat dijalankan sebelum peristiwa OnLoad.
Kodenya adalah sebagai berikut:
6: Fiddler memuat plugin
Setelah kita memprogram dan menghasilkan, salin dua file fiddler-plugin-demo.dll dan fiddler-plugin-demo.pdb di bawah direktori Debug ke folder scrip{filter}ts dari direktori instalasi fiddler kita.
Folder saya sendiri adalah: C:\Users\itsvse_pc\AppData\Local\Programs\Fiddler\scrip{filter}ts folder
Terakhir, kami memulai ulang dan membuka Fiddler, dan kami dapat melihat kontrol kami di tab, seperti yang ditunjukkan di bawah ini:
7: Aktifkan plugin untuk disebarkan secara otomatis ke direktori plugin fiddler
Setiap kali kita memodifikasi plugin, kita perlu menyalin dll ke folder scrip{filter}ts lagi, kita dapat menyelesaikan masalah ini dengan peristiwa generasi VS, kita mengkompilasi ulang generasi, VS akan secara otomatis menyalin dll kita ke direktori scrip{filter}ts, dan mengisi perintah berikut di baris perintah peristiwa generasi selanjutnya:
Seperti yang ditunjukkan di bawah ini:
Diuji untuk penggunaan normal.
Terakhir, lampirkan kode sumber:
Wisatawan, jika Anda ingin melihat konten tersembunyi dari posting ini, silakan Jawab
|