2016-11-24 14 views
1

我已經使用web.net創建了一個使用ASP.net的angular2項目。我把一切都設置正確,工作,但是當我在我的路由angular2如:「本地主機:1234 /登錄」頁面的源顯示錯誤:由於服務器的路由禁用asp.net中除api調用以外的所有服務器路由

HTTP Error 404.0 - Not Found

這顯然是不能爲此找到任何路徑。我的問題是:是否有任何方法來禁用服務器的所有路由,除非我正在執行諸如「localhost:1234/api/login」之類的調用,因爲這需要向webapi控制器發出服務器請求,該控制器將返回JSON。我想要angular2來處理所有形式的路由。而服務器只是爲了處理被推出的數據。

預先感謝您

回答

0

如果角是由產生消耗的API意見這不應該是一個問題。如果服務器需要爲Angular調用的路由提供HTML,那麼它需要配置等效路由。

0

是的,你可以在你的startup.cs類中做到這一點。

您需要配置您的API調用的方式進行的方式,否則重定向到您的index.html像這樣:

 app.UseMvc(r => 
     { 
      r.MapRoute(
       name: "default", 
       template: "{controller}/{path?}/{action}/{id?}", 
       defaults: new { controller = "Home", action = "Index" } 
      ); 

      r.MapSpaFallbackRoute(
       name: "spa-fallback", 
       defaults: new { controller = "Home", action = "Index" } 
      ); 
     }); 
相關問題