कच्ची, अप्रमाणित HTTPS प्रतिक्रिया प्राप्त करने का सबसे सीधा तरीका


39

HTTPS पर url के लिए GET अनुरोध करने, और कच्चे, अप्रकाशित प्रतिक्रिया प्राप्त करने का सबसे सीधा तरीका क्या होगा?

क्या यह कर्ल के साथ प्राप्त किया जा सकता है? यदि हां, तो आपको किन विकल्पों का उपयोग करने की आवश्यकता होगी?

जवाबों:


51

यदि आप उपयोग करना चाहते हैं curl, तो यह काम करना चाहिए:

curl -D - https://www.google.com/

हालाँकि, ध्यान दें कि यह बिल्कुल कच्ची प्रतिक्रिया नहीं है। उदाहरण के लिए chunked स्थानांतरण एन्कोडिंग प्रतिक्रिया में दिखाई नहीं देगा। इसका उपयोग करते हुए --raw, वर्बोज़ मोड ( -v) भी उपयोगी है, और -iप्रतिक्रिया निकाय से पहले हेडर दिखाता है:

curl -iv --raw https://www.google.com/

यदि आप परिणाम पर कम की तरह पेजर का उपयोग करना चाहते हैं, तो प्रगति-बार ( -s) को अक्षम करना भी आवश्यक है :

curl -ivs --raw https://www.google.com/ | less

आप क्या करना चाहते हैं इसके आधार पर समस्या हो सकती है या नहीं।

आपको जो भी मिलता है वह सभी HTTP प्रतिक्रिया हेडर और अनुरोधित URL पर दस्तावेज़ है।


13

यहाँ एक आसान तरीका है जो मन में आता है

echo 'GET / HTTP/1.1
Host: google.com

' | openssl s_client -quiet -connect google.com:443 2>/dev/null

ध्यान दें कि कुछ सर्वर (जैसे github.com) केवल साथ काम करते हैंHTTP/1.0
स्टीवन पेनी

4

यह नहीं है curl, लेकिन यह लगभग सभी यूनियनों पर उपलब्ध होना चाहिए:

wget -S --spider https://encrypted.site

यदि स्थिति संदेश आपको परेशान करते हैं:

wget -S --spider https://encrypted.site 2>&1 | awk '/^  /'

यदि आप CRLF लाइन अंत चाहते हैं:

wget -S --spider https://encrypted.site 2>&1 | awk '/^  / { sub(/$/,"\r"); print }'

क्या आप जानते हैं कि यह \r\nप्रतिक्रिया में पात्रों को संरक्षित करेगा ?
एकोर्न

@ ऑर्कन - सबसे पहले, सभी वेबसर्वर्स \r\nएक पंक्ति के अंत के साथ जवाब देंगे । मुझे विश्वास नहीं है कि यह किसी भी मामले में इसे संरक्षित करेगा, लेकिन अगर यह आपके लिए मायने रखता है, तो मैं उत्तर में उस परिणाम को प्राप्त करने का एक तरीका जोड़ूंगा।
क्रिस डाउन

1
$ GET -e https://www.google.com

डेबियन / उबंटू डिस्ट्रोस पैकेज के अंतर्गत आता है lwp-request

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