[C#] URL से होस्ट डोमेन प्राप्त करें?


Answers

Uri वर्ग का उपयोग करें और होस्ट संपत्ति का उपयोग करें

Uri url = new Uri(@"http://support.domain.com/default.aspx?id=12345");
Console.WriteLine(url.Host);
Question

स्ट्रिंग यूआरएल से मेजबान डोमेन कैसे प्राप्त करें?

GetDomain में 1 इनपुट "यूआरएल", 1 आउटपुट "डोमेन"

उदाहरण 1

INPUT: http://support.domain.com/default.aspx?id=12345
OUTPUT: support.domain.com

example2

INPUT: http://www.domain.com/default.aspx?id=12345
OUTPUT: www.domain.com

Example3

INPUT: http://localhost/default.aspx?id=12345
OUTPUT: localhost



WWW उपनाम है, इसलिए आपको इसकी आवश्यकता नहीं है अगर आप एक डोमेन चाहते हैं स्ट्रिंग से असली डोमेन प्राप्त करने के लिए यहां मेरा लिट्लेट फ़ंक्शन है I

private string GetDomain(string url)
    {
        string[] split = url.Split('.');
        if (split.Length > 2)
            return split[split.Length - 2] + "." + split[split.Length - 1];
        else
            return url;

    }



निम्न कथन का प्रयास करें

 Uri myuri = new Uri(System.Web.HttpContext.Current.Request.Url.AbsoluteUri);
 string pathQuery = myuri.PathAndQuery;
 string hostName = myuri.ToString().Replace(pathQuery , "");

उदाहरण 1

 Input : http://localhost:4366/Default.aspx?id=notlogin
 Ouput : http://localhost:4366

example2

 Input : http://support.domain.com/default.aspx?id=12345
 Output: support.domain.com



इसे इस्तेमाल करे

Console.WriteLine(GetDomain.GetDomainFromUrl("http://support.domain.com/default.aspx?id=12345"));

यह आउटपुट support.domain.com होगा

या कोशिश करो

Uri.GetLeftPart( UriPartial.Authority )