download sting data from both http and https servers in monotouch(detecting a host is working with https or not)

StackOverflow https://stackoverflow.com/questions/20372160

Frage

I'm using monotouch for developing my iOS application for iOS 6+ . The basis of the applications is downloading some data from serveres that user introduce.

This servers may work with http or https. I use below code for downloading:

    System.Net.HttpWebRequest _HttpWebRequest = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create (Url);
            _HttpWebRequest.AllowWriteStreamBuffering = true;
            _HttpWebRequest.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)";
            _HttpWebRequest.Timeout = 15000;
            _HttpWebRequest .Method ="GET";

            System.Net.WebResponse _WebResponse = null;
            _WebResponse = _HttpWebRequest.GetResponse ();
            System.IO.Stream _WebStream = _WebResponse.GetResponseStream ();
            var bytes = HelperMethods .ReadToEnd (_WebStream);
            _WebResponse.Close ();
            _WebResponse.Close ();

            return System.Text.Encoding.UTF8.GetString(bytes);

it works when the server are http but when the servers are https I should add https:// before the host name for working. So how can I detect that whether a host is working with https or http, before sending requests.

War es hilfreich?

Lösung

You cannot; and there is nothing whatsoever that says that http://example.com and https://example.com need to represent the same information, although by convention it almost always does. If you are content to assume that the two are equivalent, you'll just need to try both (or at least, decide which to try first).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top