簡體   English   中英

REST無法在Spring Boot中控制URL嗎? 排除網址?

[英]Don't REST control a URL in Spring Boot? Exclude url?

我在某些地方使用了一些Angular ui路由,並且希望Java服務器不控制某些url。

也許在其他地方運行Java應用程序更有意義? 我在相同的URL中有angularJS的原因是因為對springboot應用程序進行了一些身份驗證檢查。 因此,我希望控制大多數URL。

但是我可能想控制身份驗證的一些地方,而不是模板。

我認為我的問題是我的Spring Boot代碼正在嘗試使用Velocity,而其中某些URL應該只轉發到AngularJS路由。

因此,URL = / myreport /

->轉到Java 404錯誤,而不僅僅是轉發到Angular UI Routing

->但在某些情況下,Java應該返回404/500/403等

有沒有辦法像RestController一樣在身份驗證后轉發到AngularJS? 或禁用速度?

如果將Spring Boot代碼限制為僅進行身份驗證和提供API,並在Angular應用中實現所有UI,則可能會更直接。

然后,您仍然可以使用Spring Security來控制對API的訪問。 在Angular端,您可以在路由中使用AuthGuard,以根據用戶角色控制對部分UI的訪問。

為了獲得良好,清晰的分隔,使用基於令牌的身份驗證而不是基於表單或基本身份驗證會很有幫助。 這樣,Angular應用程序可以呈現登錄UI,並向Spring Boot應用程序進行REST調用以登錄並獲取令牌,該令牌將在后續調用中使用。

如果使用JWT,則可以讓后端產生一個包含用戶角色的令牌,然后在Angular應用程序中讀取該令牌。

我最近寫了一個由兩部分組成的博客文章,展示了如何使用JWT使用Spring Boot后端創建Angular 2應用。 參見http://chariotsolutions.com/blog/post/angular-2-spring-boot-jwt-cors_part1http://chariotsolutions.com/blog/post/angular-2-spring-boot-jwt-cors_part2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM