विंडसर बनाम फायरबग बनाम फ़िडलर - पेशेवरों और विपक्ष? [बन्द है]


91

हाल ही में, मैं एक ऐसे मुद्दे पर आया था, जहां एक सीजीआई आवेदन जवाब नहीं दे रहा है। लक्षण फ़ायरफ़ॉक्स प्रदर्शित कर रहा है:

लोकलहोस्ट से डेटा स्थानांतरित करना ...

लेकिन बात यह है कि मैं फायरबग के नेट पैनल से कोई ट्रैफ़िक नहीं देख सकता, और ब्राउज़र हमेशा के लिए एक ही मंच पर रहता है।

मैं इस एप्लिकेशन को डीबग करने के तरीकों के बारे में सोच रहा हूं, लेकिन मैं स्रोत कोड या इसके किसी भी संकलित जावा / सी ++ घटकों को नहीं देख सकता हूं, इसलिए मैं निदान के HTTP नेटवर्क स्तर को एक अच्छी शुरुआत मानता हूं।

मेरे पास फिडलर और विंडशार्क में बहुत कम अनुभव है, बस सोच रहा हूं कि क्या वे HTTP नेटवर्क स्तर में बेहतर प्रतिक्रिया / आंकड़े प्राप्त करेंगे? मैंने सुना है कि विंडसर उन्नत है, लेकिन संभवतः ट्रैफ़िक की एक बड़ी मात्रा को पेश कर सकता है, इसलिए सिस्टम व्यवस्थापक इसे बहुत पसंद नहीं करते हैं। इस समय मुझे लगता है कि फायरबग वास्तव में मुझे पर्याप्त जानकारी नहीं दिखाता है।

मुझे जानकारी एकत्र करने की आवश्यकता है ताकि मैं फिर प्रमाण के रूप में ग्राहक को अग्रेषित कर सकूं।


3
मैं चार्ल्स की सिफारिश नहीं करूंगा क्योंकि उस पर केवल एक डेवलपर काम करता है। क्या होगा अगर वह ऐप पर काम करना बंद कर दे या बस से टकरा जाए? इसके अलावा, ऐसा लगता है कि वह समर्थन अनुरोधों का जवाब नहीं देता है। मैं अपना $ 50 कहीं और खर्च करूँगा। के रूप में Fiddler , समर्थन थोड़ा बेहतर है, लेकिन वे क्योंकि इसके एक नि: शुल्क उपकरण अपने स्वयं के समय ले सकते हैं। मैं क्या बचा हूँ? संभवतः वायरशार्क या माइटम प्रॉक्सी।
मास्टरजॉय

1
@ testerjoe2 मिटम प्रॉक्सी f * ck जितना धीमा है और फिडलर जितना अच्छा नहीं है।
बाबूराव

जवाबों:


82

Wireshark, Firebug, Fiddler सभी समान काम करते हैं - नेटवर्क ट्रैफ़िक कैप्चर करना।

  • Wireshark किसी भी तरह के नेटवर्क पैकेट को पकड़ लेता है। यह TCP / IP के नीचे पैकेट विवरण कैप्चर कर सकता है (HTTP शीर्ष पर है)। यह कैप्चर होने वाले शोर को कम करने के लिए फ़िल्टर करता है।

  • फायरबग प्रत्येक पेज को ब्राउज़र पेज बनाता है और संबंधित हेडर को कैप्चर करता है और अनुरोध के प्रत्येक चरण ( DNS, प्राप्त करना, भेजना, ... ) के लिए लिया गया समय ट्रैक करता है ।

  • Fiddler एक HTTP / HTTPS प्रॉक्सी के रूप में काम करता है। यह कंप्यूटर द्वारा किए गए हर HTTP अनुरोध को कैप्चर करता है और इससे जुड़ी हर चीज को रिकॉर्ड करता है। यह पोस्ट चर को टेबल रूप में परिवर्तित करने और अनुरोधों को संपादित / फिर से करने जैसी चीजों की अनुमति देता है। यह डिफ़ॉल्ट रूप से, IE में लोकलहोस्ट ट्रैफिक को कैप्चर नहीं करता है, वर्कअराउंड के लिए FAQ देखें।


41

वायरशर्क का लाभ यह है कि यह संभवतः आपको HTTP प्रोटोकॉल के नीचे के स्तरों में त्रुटियां दिखा सकता है। Fiddler आपको HTTP प्रोटोकॉल में त्रुटियाँ दिखाएगा।

यदि आपको लगता है कि समस्या ब्राउज़र द्वारा जारी HTTP अनुरोध में कहीं है, या आप सर्वर के साथ क्या प्रतिक्रिया दे रहे हैं, या इसे जवाब देने में कितना समय लग रहा है, इस संबंध में अधिक जानकारी की तलाश कर रहे हैं, तो फ़िडलर को करना चाहिए।

यदि आपको संदेह है कि आपके ब्राउज़र और सर्वर द्वारा उपयोग की जाने वाली टीसीपी / आईपी प्रोटोकॉल में कुछ गलत हो सकता है (या नीचे अन्य परतों में), तो वायरशर्क के साथ जाएं।


2
वास्तव में, Wireshark प्रॉक्सी और नेट सर्वर के मुद्दों को उजागर कर सकती है, इसका उपयोग उस क्लाइंट पर भी किया जा सकता है जिसे आप सर्वर से कनेक्शन से जोड़ रहे हैं।
ग्लेनरेनर 3

33

उपरोक्त में से कोई भी, यदि आप एक मैक पर हैं। चार्ल्स प्रॉक्सी का उपयोग करें । यह सबसे अच्छा नेटवर्क / अनुरोध सूचना संग्रहकर्ता है जो मैं कभी भी भर आया हूं। आप सभी आउटगोइंग अनुरोधों को देख और संपादित कर सकते हैं, और उन अनुरोधों की प्रतिक्रियाओं को कई रूपों में देख सकते हैं, जो प्रतिक्रिया के प्रकार पर निर्भर करते हैं। लाइसेंस के लिए इसकी कीमत 50 डॉलर है, लेकिन आप परीक्षण संस्करण को डाउनलोड कर सकते हैं और देख सकते हैं कि आप क्या सोचते हैं।

अगर आपका विंडोज पर, तो मैं सिर्फ फिडलर के साथ रहूंगा।


15
क्या आपके लिए यह जानना संभव होगा कि चार्ल्स फिडलर की तरह कुछ से अलग कैसे है? ऊपर आपने जो उल्लेख किया है वह बहुत हद तक फिडलर जैसा लगता है। मैं वर्तमान में फ़िडलर का उपयोग करता हूं, लेकिन अगर मुझे इसमें से कुछ और मिलता है, तो कुछ बेहतर उपयोग करने में खुशी होगी।
जगमग

27
चार्ल्स और फिडलर वास्तुकला में काफी समान हैं। चार्ल्स एक मैक पर चलता है; फिडलर नहीं होगा। चार्ल्स जावा में लिखा गया है और पैसे खर्च करता है। Fiddler को C # में free, और आसानी से .NET में लिखा जाता है।
एरिकावल

7
यह वास्तव में विंडोज, मैक OSX और लिनक्स
Casebash

11
क्यों यह तारकेश से बेहतर है?
16

3
मैं एक दिन के भीतर फ़िडलर के Google समूह के लगभग हर प्रश्न का उत्तर देता हूं। लेकिन इस बारे में बात करने के लिए यह सही जगह नहीं है।
एरिकला

15

चार्ल्स से तुलना करने पर हर बार फ़िडलर विजेता होता है।

किसी भी http डिबगर में फ़िडलर की "अनुकूलित नियम" सुविधा अद्वितीय है। Http के अनुरोधों और प्रतिक्रियाओं को हेर-फेर करने के लिए कोड लिखने की क्षमता मेरे लिए अमूल्य है और मैं वेब विकास में जो काम करता हूं।

फ़िडलर के लिए बहुत सी सुविधाएँ हैं जो केवल चार्ट के पास नहीं है, और संभवतः कभी भी नहीं होगी। फिडलर प्रकाश-वर्ष आगे है।


1
सिवाय इसके कि फिडलर का कोई फायदा नहीं है जब आप खिड़कियों के नीचे काम नहीं करते हैं। आप बीच में एक छद्म भी डाल सकते हैं, फिर आप अपने आप को (C # में) कर सकते हैं। उदाहरण के लिए mentalis.org/soft/projects/proxy । कोई फ़िडलर की आवश्यकता नहीं है। मेरे पास अब घर पर एक विंडोज़ सिस्टम नहीं है - केवल एआरएम-आधारित लिंज़। और मुझे इस पर बहुत खुशी है।
स्टीफन स्टीगर

आपने फ़िडलर की कई विशेषताओं का उल्लेख किया है, जिसमें चार्ट नहीं है। ये विशेषताएं क्या हैं?
मास्टरजो

5

मैं अपने HTTP / HTTPS लेवल डिबगिंग के लिए चार्ल्स प्रॉक्सी और फिडलर दोनों का उपयोग करता हूं।

चार्ल्स प्रॉक्सी के पेशेवरों:

  1. HTTPS को बेहतर तरीके से संभालता है (आपको एक चार्ल्स प्रमाणपत्र मिलता है जिसे आप 'विश्वसनीय अधिकारियों की सूची' में डालेंगे)
  2. लोड / सेव सेशन (कई पृष्ठों पर डिबगिंग करते समय esp उपयोगी) जैसी अधिक सुविधाएँ हैं, एक वेबसाइट मिरर (कैशिंग परिसंपत्तियों में उपयोगी और इसलिए तेजी से डीबगिंग), आदि।
  3. जैसा कि jburgess ने बताया है, AMF को संभालता है।
  4. एक पेड़ की संरचना में JSON, XML और अन्य प्रकार की प्रतिक्रियाओं को प्रदर्शित करता है, जिससे इसे पढ़ना आसान हो जाता है। बाइनरी डेटा के बजाय छवि प्रतिक्रियाओं में चित्र प्रदर्शित करता है।

चार्ल्स प्रॉक्सी के विपक्ष:

  1. लागत :-)

9
फिडलर चार्ल्स की तुलना में सरल HTTPS विश्वास प्रदान करता है, सेव / लोड का एक समृद्ध सेट प्रदान करता है, और JSON / XML और अन्य स्वरूपों को ट्री संरचना का उपयोग करके प्रदर्शित करता है। यह फ्रीवेयर है, और एएमएफ निरीक्षक उपलब्ध हैं, हालांकि मैंने उनका उपयोग नहीं किया है।
एरिकलाव

1
@EricLaw: हाँ, लेकिन आपका "फ्रीवेयर" (अमेरिकी निर्यात प्रतिबंध के अधीन - उर्फ ​​असुरक्षित क्रिप्टोग्राफी) लिनक्स पर नहीं चलता है (मेरा एआरएम-प्रोसेसर क्रोमबुक लिनक्स डेबियन के साथ)।
स्टीफन स्टीगर

4

यदि आप एक ऐसा अनुप्रयोग विकसित कर रहे हैं जो एएमएफ ( जीआईएस वेब एपीआई के एक विशेष सेट में सामान्य रूप से उपयोग किए जाने वाले डेटा को नियमित रूप से उपयोग करता है) को स्थानांतरित करता है, तो फ़िडलर वर्तमान में एएमएफ डिकोडर प्रदान नहीं करता है जो आपको आसानी से बाइनरी डेटा को आसानी से देखने की अनुमति देगा- पठनीय प्रारूप। चार्ल्स यह कार्यक्षमता प्रदान करता है।


3

सूची को पूरक करने के लिए, http://mitmproxy.org/ के बारे में भी जानकारी रखें


इस विकल्प पर विचार करने लायक क्या होगा?

1
@JonofAllTrades यह कमांड लाइन से चलता है। प्रत्येक विकल्प एक अलग कार्यान्वयन प्रदान करता है, इसलिए इस मामले में विविधता एक उद्देश्य की सेवा करती है।
मैक्सिम वीक्स्लर

मैक्सिम - मिटम एक कमांडलाइन आधारित टूल है। जीयूआई की कमी मेरे जैसे उपयोगकर्ताओं के लिए एक समस्या है। क्या आप हमें बता सकते हैं कि कमांडलाइन टूल का उपयोग कब करना है और कब गिनी का उपयोग करना है?
मास्टरज्यो

जब आप एक सर्वर में SSHing कर रहे हैं और आपको एक प्रॉक्सी की आवश्यकता है, तो शायद mitmproxy एक जीवन रक्षक होगा (जब तक आप GUI के साथ प्रॉक्सी के लिए एक अलग वातावरण के लिए तैयार न हों।)
arithma

mitmproxy के लिए एक UI है, docs.mitmproxy.org/stable/tools-mitmweb
yeradis
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.