2011-08-27 48 views
1

如何檢測UIWebView中的網頁是否需要使用HTTP或HTTPS?我有一個地址欄,用戶可以在其中輸入「www.apple.com」,然後將其轉換爲帶有http://的NSString。如果Apple.com需要HTTPS,這將如何處理?我該怎麼做?謝謝你的幫助!檢測UIWebView是否需要使用HTTP或HTTPS

回答

0

在大多數情況下,需要HTTPS的網站設置爲自動重定向到正確的SSL端口。一般如下所示:

  1. 在您的網絡瀏覽器中輸入網址http://www.mysite.com/。由於沒有指定端口,因此它會嘗試將默認端口80用於HTTP。
  2. 該網站收到端口80上的請求,並確定您需要使用SSL,因此它會將重定向響應發送回瀏覽器。該重定向響應通常會告訴瀏覽器在標準HTTPS端口(443)上使用HTTPS再次嘗試。
  3. 您的瀏覽器重新啓動對HTTPS端口的請求。

因此,絕大多數情況下,您不需要知道是否需要使用HTTPS。只需使用http轉到該網站。如果需要HTTPS,它幾乎總是會自動將您重定向到那裏。

+0

Hi Tim,如果您的服務器是IIS並且要求用戶在重定向到默認頁面後進行身份驗證,該怎麼辦?如果我的服務器的URL是https://www.mysite.com,並且需要NTLM身份驗證,並且一旦用戶通過身份驗證,它會將用戶重定向到https://www.mysite.com/default.aspx。在這種情況下,如果我從輸入mysite.com開始,連接仍會要求身份驗證質詢一次,但在對用戶進行身份驗證之後,它只會將請求重定向到https,並且不會進一步重定向。 –