2016-11-09 72 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 –