2016-11-09 106 views
0

有兩個途徑的角2基於應用程序:角2的http://和https://路線

const appRoutes: Routes = [ 
    { 
     path: 'home', 
     component: HomeComponent 
    }, 
    { 
     path: 'login', 
     component: LoginComponent 
    } 
]; 

的 「/家」 的路線應該去 「http://mysite/home」 和 「/登錄」應該去「https://mysite/login」。請注意,第一個以「http://」開頭,第二個以「https://」開頭。如何配置路由器使用不同的路由來源?或者至少對於同一個來源的http/https?

回答

1

這不是Angular2特有的東西。加載應用程序時,路由將採用URL中架構的任何內容。您有幾個選項可以讓登錄需要HTTP。

  • 始終通過HTTP加載應用程序。一般來說這不是一個糟糕的做法,現在許多Web應用程序都這樣做。
  • 使用您的Web服務器的重寫插件(mod-rewrite for Apache或IIS重寫IIS)將/ login路由的所有HTTP請求重定向到HTTPs。
+0

感謝您的回覆。我很樂意通過https運行所有網站,但我的網站可以包含對不安全資源的引用。例如,一個頁面可以有。在這種情況下,瀏覽器將顯示有關從安全頁面引用的不安全資源的警告。是否有可能擺脫這些警告? – Sergey

+0

是的,這是可能的,但是你必須在後端配置一些東西來重寫HTTP請求到HTTP請求。您可以使用我提到的相同方法重新編寫所有請求。或者這裏是我在IIS下使用的模塊,它可以完成相同的任務。 http://www.codeproject.com/Articles/7206/Switching-Between-HTTP-and-HTTPS-Automatically-Ver –