2013-01-21 20 views
5

पिछला पृष्ठ यूआरएल कैसे प्राप्त करें?पिछला पृष्ठ प्राप्त करें यूआरएल

सेनारियो, उपयोगकर्ता Google, याहू, बिंग फॉर्म आ सकता है।
कैसे पता चलेगा कि वे कहां से आए हैं?

मैं Request.UrlReferrer
का उपयोग करने का प्रयास करता हूं लेकिन यह एक शून्य मान देता है।

सलाह के लिए धन्यवाद।

मैं एएसपी.NET वेबफॉर्म, सी # का उपयोग कर रहा हूं।

अद्यतन
मेरे पास एक वेबसाइट चल रही है।
मैं सिर्फ यह जानना चाहता हूं कि जब उपयोगकर्ता मेरी वेबसाइट पर जाते हैं तो वे कहां से आते हैं।

+3

क्या आप वाकई अनुरोध करते हैं कि वास्तव में एक संदर्भकर्ता है? पूर्व। उपयोगकर्ता यूआरएल में मैन्युअल रूप से टाइप करता है। –

+0

@AustinBrunkhorst मेरे पास एक वेबसाइट चल रही है। मैं सिर्फ यह जानना चाहता हूं कि जब उपयोगकर्ता मेरी वेबसाइट पर जाते हैं तो वे कहां से आते हैं। – alont

+2

मैं इसे समझता हूं, लेकिन मैं कह रहा हूं कि कोई रेफरर नहीं है तो यह शून्य होगा। –

उत्तर

8

आप जो वर्णन कर रहे हैं वह Referer HTTP शीर्षलेख (मूल रूप से "रेफरर" की गलत वर्तनी है जिसे हम अब अटक गए हैं)। ब्राउज़र इस क्षेत्र को किसी भी वेबपृष्ठ के यूआरआई के साथ पॉप्युलेट करते हैं जिसके कारण उपयोगकर्ता को किसी नए पृष्ठ पर नेविगेट करने का कारण बनता है (जैसे <a> हाइपरलिंक, <form> सबमिशन, फ़्लैश ऑब्जेक्ट में एक क्रिया आदि) पर क्लिक करके। प्रत्येक उपयोगकर्ता कार्रवाई हेडर को सेट करने का कारण नहीं बनती है, जैसे कि पता पता बार में सीधे टाइप किया गया है, या यदि डेस्कटॉप ईमेल संदेशों में कोई लिंक खोला गया है।

एएसपी.NET के तहत यह हेडर Request.UrlReferrer संपत्ति द्वारा पहुंच योग्य है। हालांकि यह गुण शून्य होगा यदि HTTP शीर्षलेख मान एक यूआरआई नहीं है या यदि क्लाइंट क्लाइंट UA द्वारा सेट नहीं किया गया था।

आपको इस तंत्र पर कभी भी निर्भर नहीं होना चाहिए क्योंकि यह ग्राहक द्वारा निर्धारित किया गया है, और आपको कभी भी ग्राहक (http://en.wikipedia.org/wiki/Defensive_programming) पर भरोसा नहीं करना चाहिए। और जैसा कि कहा गया है, सभी आगंतुकों के पास रेफरर हेडर सेट नहीं होगा।

+1

यह भी उल्लेखनीय है कि रेफरर को अक्सर गोपनीयता चिंता के रूप में देखा जाता है, इसलिए इंटरनेट सुरक्षा सूट अक्सर रेफरर डेटा को खाली कर देंगे। –

संबंधित मुद्दे