हेडर का निरीक्षण करने के लिए, आपको उस सर्वर के विरुद्ध परीक्षण करने की आवश्यकता है जिसके लिए प्रमाणीकरण की आवश्यकता है। ग्राहक तब तक Authorization
हेडर नहीं भेजेगा जब तक कि सर्वर इसके लिए नहीं पूछता क्योंकि क्लाइंट को यह नहीं पता होगा कि सर्वर को प्रमाणीकरण विधि (मूल या पाचन) की आवश्यकता है।
HTTP प्रमाणीकरण दो अनुरोध में किया जाता है:
पहले, किसी भी Authorization
हेडर के बिना एक अनुरोध भेजा है। सर्वर तब WWW-Authenticate
के साथ प्रतिक्रिया देता है जो क्लाइंट को प्रमाणीकृत करने के बारे में बताता है। इसमें एक वास्तविक नाम और प्रमाणीकरण विधि शामिल है (फिर से, यह या तो मूल या पाचन है)
क्लाइंट अतिरिक्त Authorization
शीर्षलेख के साथ एक नया अनुरोध भेजता है। basic authentication के मामले में, इस हेडर, बस user:pass
इनकोडिंग base64 है बस के रूप में आप कह रहे हैं:
Authorization: Basic dXNlcjpwYXNz
अब पासवर्ड जब तक आप https का उपयोग कर रहे हैं, पारगमन में दिख रहा है। एक बेहतर विकल्प digest authentication है, जहां WWW-Authenticate
और Authorization
दोनों की सामग्री wikipedia article द्वारा सर्वोत्तम रूप से समझाया गया है। :)
यह केवल प्राधिकरण शीर्षलेख है। मुझे नहीं पता कि क्रोम यह कैसे करता है, लेकिन फ़ायरफ़ॉक्स के साथ यह जांचता है कि साइट प्रमाणीकरण के लिए पूछ रही है (अनुरोध में) और यदि यह नहीं है, तो आपको चेतावनी दी जाती है कि 'आप साइट पर लॉग इन करने वाले हैं "stackoverflow। कॉम "उपयोगकर्ता नाम" उपयोगकर्ता "के साथ, लेकिन वेबसाइट प्रमाणीकरण की आवश्यकता नहीं है। यह आपको चाल करने का प्रयास हो सकता है। क्या आप जिस साइट पर जाना चाहते हैं, वह "stackoverflow.com" है? और फिर यह या तो [हां] लेख विवरण में कटौती करता है या [नहीं] अनुरोध बंद कर देता है। तो जब तक आपके पास प्राधिकरण के साथ कोई साइट आसान न हो, तब तक आप हेडर नहीं देख पाएंगे। –