我有一個使用角度html5模式進行路由的問題,使用彈簧引導後端。當我使用ui路由器的$ state.go()導航到不同的url時,應用程序工作正常,但是當我嘗試輸入不同的狀態的url並直接轉到它時,它無法正確加載。Angular html5模式和彈簧路由
我們使用了類似於此處詳述的解決方案(https://spring.io/guides/tutorials/spring-security-and-angular-js/),本質上使用彈簧控制器將某些頁面轉發到基本URL「/」。與我們的不同之處在於,我們使用基本網址「步驟」將每個頁面放在首頁之前。但是,當我們直接導航到我們網站中的其他頁面時,所加載的每個資源都會變成我們的index.html文件(js,css等)。當我們查看網絡請求時,出於某種原因,它會在每個請求前附加「step」url(因此,而不是css/style.css,它將是step/css/style.css)。
這是我們的春天控制器的例子:
@Controller
public class ViewController {
@RequestMapping(value="/step/**")
public String forward() {
return "forward:/";
}
}
任何幫助,將不勝感激,但請記住,我們已經調查了各種解決方案已經如提到的鏈接和一些其他具有類似的解決方案。
你能詳細說明一下嗎?我嘗試過使用「/ ** /」,但是我最終在一個無限循環中返回「index」,然後再次使用「/WEB-INF/views/index.html」調用控制器,有沒有什麼方法可以讓我有一個帶「/ **」的控制器,排除任何以「/ WEB-INF」開頭的東西?我是否必須將所有內容都粘貼到「/ application」中? – Craig