Saya memiliki layanan WCF yang menerima tipe kompleks dan mengembalikan beberapa data. Saya ingin menggunakan Fiddler untuk melihat seperti apa permintaan masuk ke layanan tersebut. Kliennya adalah aplikasi konsol .net yang menggunakan proxy referensi Layanan. Apakah ini mungkin dengan Fiddler. Saya baru mengenal alat ini dan hanya menggunakannya di masa lalu untuk mengirim data dengan pembuat permintaan.
107
Jawaban:
Anda perlu menambahkan ini di web.config Anda
Itu saja, namun jangan lupa untuk menghilangkan baris web.config setelah menutup fiddler, karena jika tidak maka akan membuat error.
Referensi: http://fiddler2.com/documentation/Configure-Fiddler/Tasks/UseFiddlerAsReverseProxy
sumber
http://
dalam alamat proxy. Sisanya sama, seperti yang Anda sebutkan.http://localhost/abc.svc
tohttp://HOSTNAME/abc.svc
Fiddler mendengarkan permintaan keluar daripada permintaan masuk sehingga Anda tidak akan bisa memantau semua permintaan yang masuk ke layanan Anda dengan menggunakan Fiddler.
Hal terbaik yang akan Anda dapatkan dengan Fiddler adalah kemampuan untuk melihat semua permintaan saat dibuat oleh Aplikasi Konsol Anda (dengan asumsi bahwa aplikasi tersebut menghasilkan permintaan web daripada menggunakan pipeline lain).
Jika Anda menginginkan alat yang lebih kuat (tetapi lebih sulit digunakan) yang memungkinkan Anda memantau SEMUA permintaan yang masuk, Anda harus memeriksa WireShark.
Edit
Saya berdiri dikoreksi. Terima kasih kepada Eric Law yang telah memposting petunjuk untuk mengonfigurasi Fiddler menjadi proxy terbalik !
sumber
Baru saja mengalami masalah ini, yang berhasil bagi saya adalah menggunakan localhost.fiddler:
sumber
Menggabungkan peringatan yang disebutkan dalam komentar / jawaban untuk beberapa kasus penggunaan.
Kebanyakan, lihat http://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/ConfigureDotNETApp
Di aplikasi konsol, Anda mungkin tidak perlu menentukan
proxyaddress
:Dalam aplikasi web / sesuatu yang dihosting di IIS, Anda perlu menambahkan
proxyaddress
:HttpWebRequest
, dll), itu akan selalu melewati proxy Fiddler untuk URL yang berisilocalhost
, jadi Anda harus menggunakan alias seperti nama mesin atau membuat sesuatu di file 'host' Anda (itulah sebabnya sesuatu sepertilocalhost.fiddler
atauhttp://HOSTNAME
karya)Jika Anda menetapkannya
proxyaddress
, Anda harus menghapusnya dari konfigurasi Anda jika Fiddler tidak aktif, atau permintaan apa pun yang dibuat aplikasi Anda akan memunculkan pengecualian seperti:sumber
Sederhananya, yang Anda butuhkan hanyalah mengubah alamat di klien konfigurasi: alih-alih 'localhost' ubah ke nama mesin atau IP
sumber
Ini mudah jika Anda memiliki kendali atas klien yang mengirimkan komunikasi. Yang perlu Anda lakukan hanyalah menyetel HttpProxy pada kelas layanan sisi klien.
Saya melakukan ini, misalnya, untuk melacak klien layanan web yang berjalan di ponsel cerdas. Saya mengatur proxy pada koneksi sisi klien ke IP / port Fiddler, yang berjalan pada PC di jaringan. Aplikasi smartphone kemudian mengirimkan semua komunikasi keluarnya ke layanan web, melalui Fiddler.
Ini bekerja dengan sempurna.
Jika klien Anda adalah klien WCF, lihat T&J ini untuk mengetahui cara menyetel proxy.
Meskipun Anda tidak memiliki kemampuan untuk mengubah kode aplikasi sisi klien, Anda mungkin dapat menyetel proxy secara administratif, bergantung pada tumpukan layanan web yang digunakan klien Anda.
sumber
Pelacakan / Diagnostik WCF Standar
Jika karena alasan tertentu Anda tidak dapat mengaktifkan Fiddler, atau lebih suka mencatat permintaan dengan cara lain, opsi lain adalah menggunakan fungsionalitas pelacakan WCF standar. Ini akan menghasilkan file yang memiliki penampil yang bagus.
Docs
Lihat https://docs.microsoft.com/en-us/dotnet/framework/wcf/samples/tracing-and-message-logging
Konfigurasi
Tambahkan yang berikut ini ke konfigurasi Anda, pastikan
c:\logs
ada, buat ulang, dan buat permintaan:sumber
Saya telah menggunakan alat hiu kawat untuk memantau panggilan layanan dari aplikasi lampu perak di browser ke layanan. coba link berikan info yang jelas
Ini memungkinkan Anda untuk memantau seluruh permintaan dan tanggapan konten.
sumber
Saya baru saja mencoba jawaban pertama dari Brad Rem dan sampai pada pengaturan ini di web.config di bawah BasicHttpBinding:
Semoga ini bisa membantu seseorang.
sumber
Anda dapat menggunakan HTTP Debugger versi Gratis.
Ini bukan proxy dan Anda tidak perlu melakukan perubahan apa pun di web.config.
Juga, ini bisa menunjukkan keduanya; permintaan HTTP masuk dan keluar. HTTP Debugger Gratis
sumber