2012-03-31 16 views
5

मेरे पास .NET Framework 4.0 पर कंसोल ऐप में चल रहे मूल HTTP बाइंडिंग, कोई एसएसएल का उपयोग करके स्वयं-होस्ट किया गया डब्ल्यूसीएफ ऐप है।डब्ल्यूसीएफ वेबगेट HTTP रेफरर कैप्चर करें?

मेरे पास एक विधि पर एक वेबगेट विशेषता है जिसके लिए एक "धूम्रपान परीक्षण" के रूप में मानव-पठनीय स्ट्रिंग लौटाती है।

यदि मेरे पास एएसपी.NET वेबफॉर्म पेज था, तो मैं यह देखने के लिए अनुरोध करता हूं कि क्लाइंट स्वयंसेवक की रीडायरेक्ट जानकारी स्वयंसेवा करता है या नहीं।

मैं डब्ल्यूसीएफ के साथ ऐसा कैसे कर सकता हूं?

धन्यवाद।

उत्तर

5

आप BasicHttpBinding उपयोग कर रहे हैं, WebGet विशेषता शायद ध्यान नहीं दिया जा रहा है (यह जो webHttpBinding और WebHttpBehavior का उपयोग अंतिमबिंदुओं के लिए प्रयोग किया जाता है)।

यदि आप "वेब" एंडपॉइंट (WebHttp बाइंडिंग/WebHttpBehavior) का उपयोग कर रहे हैं, तो आप WebOperationContext.Current.IncomingRequest.Headers[HttpRequestHeader.Referer] का उपयोग कर सकते हैं।

HttpRequestMessageProperty prop; 
prop = (HttpRequestMessageProperty)OperationContext.Current.IncomingMessageProperties[HttpRequestMessageProperty.Name]; 
var referer = prop.Headers[HttpRequestHeader.Referer] 
: आप System.ServiceModel.Web.dll के लिए एक संदर्भ की जरूरत नहीं है, तो आप भी HttpRequestMessageProperty OperationContext से उपयोग कर सकते हैं
संबंधित मुद्दे