2015-11-03 37 views
1

如何验证网站使用https,安全通信协议/不是。 一样,如果我给www.facebook.com它应该显示在第二line.im受保护的https或not.im得到错误越来越假,即使网站是HTTPS如何知道给定的网站是https保护或不在C#

checkSecured(); 

    private void checkSecured() 
{ 
    string url = txturl.Text.Trim(); 
    var uri = new Uri("https://www.facebook.com"); 
    var requestType = uri.Scheme; 
    var value= HttpContext.Current.Request.IsSecureConnection; 

     } 
+0

HttpContext.Current.Request.IsSecureConnection –

+2

他询问如何找到,如果远程站点为https,而不是'Current'之一。 – Aristos

+0

我只想检测一个网站是否受到https保护。我会给文本框中的任何网站名称,它应该告诉保护与否。我不知道网站是否有http或不。制作seo工具。一般用户给www.google.com那么它应该https保护或不 –

回答

-1

有很多网站可以在http和https上运行,有些可以在http上运行,有些在https上运行。

因此,在您的网址检查两次

1)如果http://+url是否有效

2)如果https://+url是否有效。

然后你可以得到结果。

private bool RemoteFileExists(string url) 
{ 
try 
{ 
    //Creating the HttpWebRequest 
    HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest; 
    //Setting the Request method HEAD, you can also use GET too. 
    request.Method = "HEAD"; 
    //Getting the Web Response. 
    HttpWebResponse response = request.GetResponse() as HttpWebResponse; 
    //Returns TRUE if the Status code == 200 
    response.Close(); 
    return (response.StatusCode == HttpStatusCode.OK); 
} 
catch 
{ 
    //Any exception will returns false. 
    return false; 
} 
} 

来自:C# How can I check if a URL exists/is valid?

+0

为什么-ve在回答这个答案时答案是正确的? –

-2

您可以使用下面的代码行检查如果连接是安全的或没有。

HttpContext.Current.Request.IsSecureConnection 
+0

但如何通过网站链接... –

+0

如何编写一个方法来获得该属性。我没有得到它,你可以帮助我通过创建示例方法 –

+0

在你的问题,该网址的格式不正确。如果你想创建一个Uri,你需要执行以下操作。 Uri baseUri = new Uri(“https://www.stackoverflow.com”); string test = baseUri.Scheme; 你不得不提的计划(http://或https://) –