मैं कमांड लाइन वाले सहित चार्ल्स वेब डिबगिंग प्रॉक्सी के माध्यम से सभी HTTP अनुरोध कैसे चला सकता हूं?


24

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

जब मैं चार्ल्स को चलाता हूं और नेटवर्क कॉन्फ़िगरेशन की जांच करता हूं, तो मुझे लगता है कि मैं समझता हूं कि यह कैसे काम करता है - यह बस सभी HTTP और HTTPS अनुरोधों के लिए एक प्रॉक्सी सेट करता है और फिर पोर्ट 8888 पर इनकी सुनता है:

यहाँ छवि विवरण दर्ज करें

हालांकि आइटम मैं समझ नहीं है कि मैं किसी भी अनुरोध है कि मैं इस तरह के रूप टर्मिनल पर आरंभ किया है, नहीं दिख रहा है wget, curlया elinksब्राउज़र।

मुझे पता है कि मैं 127.0.0.1:8888 का उपयोग करके कर्ल और विग के साथ प्रॉक्सी को निर्दिष्ट कर सकता हूं, लेकिन मुझे समझ नहीं आता है कि क्या नेटवर्क इंटरफ़ेस कॉन्फ़िगरेशन में प्रॉक्सी के साथ सेट है, तो मुझे मैन्युअल रूप से उनके लिए प्रॉक्सी को निर्दिष्ट करने की आवश्यकता होगी। ।

इसके अलावा, मैं ब्लूक्रैब (वेबसाइट कॉपियर) को चार्ल्स में दिखाने के लिए प्रतीत नहीं कर सकता हूं - और मुझे इसके लिए एक प्रॉक्सी सेटिंग दिखाई नहीं दे रही है - हालांकि मेरा मानना ​​है कि यह एक एक्सविंडो रैपर या कुछ और का उपयोग कर रहा है (इसलिए यह वास्तव में एक देशी नहीं है कोको / कार्बन ऐप):

यहाँ छवि विवरण दर्ज करें

मैं चार्ल्स के माध्यम से चलने के लिए अपने सिस्टम पर सभी HTTP अनुरोध कैसे प्राप्त कर सकता हूं?

स्पष्टीकरण

मेरा प्रश्न क्यों कर्ल और wget प्रॉक्सी का उपयोग नहीं होगा जब नेटवर्क इंटरफेस के लिए सही सिंटैक्स के बारे में पूछ एक से अधिक उपयोग करने के लिए इतना स्थापित किया गया था की व्यवस्था बुनियादी बातों के बारे में है curl, wgetआदि

जवाबों:


4

वीपीएन एक नया नेटवर्क डिवाइस बनाएगा, आप इसे ifconfigकमांड में देख सकते हैं , और फिर उस डिवाइस में सभी सिस्टम नेटवर्क को रूट कर सकते हैं, आप रूट उपयोग routeकमांड देख सकते हैं ।

लेकिन HTTP प्रॉक्सी (इस मामले में, चार्ल्स) अलग है, यह सिर्फ एक पोर्ट खोलता है, इसका उपयोग करने के लिए, आपको HTTP सामान के लिए उस पोर्ट का उपयोग करने के लिए अपनी एप्लिकेशन सेटिंग निर्दिष्ट करनी होगी। और केविन रीड के जवाब के रूप में curl, wgetआदि ओएस एक्स के सिस्टम की विस्तृत सेटिंग्स को नहीं पढ़ते हैं।


आपके प्रॉक्सी सॉक्स है (चार्ल्स का समर्थन करता है दोनों HTTP और सॉक्स), तो आप इस्तेमाल कर सकते हैं ProxyChains या tsocks आवेदन के लिए प्रॉक्सी सेटिंग का समर्थन नहीं करता।

उदाहरण के लिए:

$ proxychains git clone https://github.com/rofl0r/proxychains-ng

फिर "वीपीएन-जैसे" वेब डिबगिंग कैसे करें? क्या ऐसे ऐप हैं जो ऐसा करते हैं?
पचेरियर

@Pacerier Wireshark , यह एक इंटरनेट / नेटवर्क मॉनिटरिंग है, टूल का विश्लेषण करता है, जिसमें आप अपने सिस्टम के सभी नेटवर्क ट्रैफ़िक को बहुत अधिक देख सकते हैं, इसमें शामिल हैं, लेकिन UDP, TCP (HTTP सहित) तक सीमित नहीं है। हालाँकि, यह वेब डिबगिंग के लिए बहुत जटिल है , लेकिन वन-लाइनर फ़िल्टर कमांड दर्ज करें ताकि केवल HTTP ट्रैफ़िक प्रदर्शित हो सके।
मेंगदी गाओ

@ स्पेसर भी मितप्रोक्सी को मानते हैं , जब ट्रांसपेरेंट प्रॉक्सी मोड में चल रहा है, तो आपको वीपीएन जैसा वेब डिबगिंग मिला। नीचे की ओर यह है कि यह एक कमांड लाइन टूल है और कॉन्फ़िगरेशन थोड़ा जटिल है।
मेंगदी गाओ

18

प्रॉक्सी के पीछे wget (आपको आरसी फ़ाइल बनानी पड़ सकती है) स्रोत

`$ vim ~/.wgetrc`

निम्नलिखित पंक्ति जोड़ें:

http_proxy=http://127.0.0.1:8888

प्रॉक्सी स्रोत के पीछे कर्ल

$ vim ~/.curlrc

निम्नलिखित पंक्ति जोड़ें:

proxy = 127.0.0.1:8888

प्रॉक्सी स्रोत के पीछे है

इसके elinks.confसाथ अपनी फ़ाइल खोजें :

sudo find / -name elinks.conf

निम्नलिखित पंक्ति जोड़ें:

protocol.http.proxy.host "127.0.0.1:8888"

BlueCrab के बारे में निश्चित नहीं है


1
> मुझे पता है कि मैं 127.0.0.1:8888 का उपयोग करके कर्ल और wget साथ प्रॉक्सी निर्दिष्ट कर सकते हैं, लेकिन मुझे समझ नहीं आता है, तो नेटवर्क इंटरफेस विन्यास में एक प्रॉक्सी के साथ की स्थापना की है क्यों मैं मैन्युअल के लिए प्रॉक्सी निर्दिष्ट करने के लिए की आवश्यकता होगी ये बातें।
cwd

आपका प्रश्न शीर्षक और जो आप खोज रहे थे वह मेल नहीं खाता। मैं उस जानकारी को खोजने की कोशिश करूंगा, हालांकि।
रेबेका डेसनविले

1
मुझे लगता है कि यह मेल खाता है - मैं चार्ल्स डिबगिंग प्रॉक्सी के माध्यम से सभी अनुरोधों को चलाने के लिए एक रास्ता ढूंढ रहा हूं और कार्यक्रम के आधार पर कार्यक्रम पर नियम स्थापित नहीं करना है। चिंता मत करो अगर यह सवाल बासी हो जाता है और कोई भी इसका जवाब नहीं दे सकता है तो मैं वापस आऊंगा और आपका जवाब स्वीकार करूंगा। और उन उपयोगिताओं के लिए कॉन्फ़िगरेशन सिंटैक्स साझा करने के लिए धन्यवाद।
cwd

आपके संपादन को पढ़ने के बाद अब मैं देखता हूं कि मैंने आपके मूल अनुरोध को गलत समझा है।
रेबेका डेसनविले

11

आप सभी HTTP अनुरोधों का सम्‍मिलित न होने का कारण यह है कि ऑपरेटिंग सिस्टम के स्तर पर, "HTTP HTTP" जैसी कोई चीज नहीं है; केवल टीसीपी कनेक्शन हैं। एक HTTP प्रॉक्सी से संपर्क करने का अर्थ है कि URL में होस्ट नाम के बजाय प्रॉक्सी सर्वर से संपर्क करने के साथ-साथ HTTP अनुरोध को थोड़ा बदलना, इसलिए यह उस कोड में किया जाना चाहिए जो HTTP अनुरोध भेज रहा है।

कर्ल और विग के पास अपना स्वयं का HTTP कोड होता है, जो अपनी स्वयं की कॉन्फिग फाइलों का उपयोग करता है - उन्हें प्रॉक्सी सेटिंग्स की तलाश करने के लिए प्रोग्राम नहीं किया गया है जहां मैक ओएस एक्स उन्हें रखता है, न ही वे मैक ओएस एक्स के साथ प्रदान किए गए HTTP पुस्तकालयों का उपयोग कर रहे हैं जो उन प्रॉक्सी का उपयोग करते हैं सेटिंग्स।


6

यदि आप अपनी कॉन्फ़िगरेशन फ़ाइलों को स्पर्श नहीं करना चाहते हैं, तो कर्ल का उपयोग करके आप कर सकते हैं:

curl http://example.com --proxy 127.0.0.1:8888

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