php小編百草回答您的問題:「是否可以從ServerWebExchange檢索角色?」答案是肯定的。在Spring WebFlux中,可以透過ServerWebExchange物件來取得目前請求的角色資訊。 ServerWebExchange是Spring WebFlux框架的核心類別之一,它代表著HTTP請求和回應的上下文。透過ServerWebExchange對象,您可以存取請求的路徑、請求頭、請求參數等資訊。而要取得角色訊息,可以透過ServerWebExchange對象的getUser()方法來取得目前請求的使用者對象,從而獲得使用者的角色資訊。這樣,您就可以根據使用者的角色進行相應的權限控制和業務處理了。
我可以從 org.springframework.web.server.serverwebexchange
實例檢索主體名稱。
exchange.getprincipal().subscribe(principal -> /* do something with it */);
我也可以檢索該主體的角色嗎? java.security.principal
類別(與 userdetails
不同)僅提供名稱字串 (getname()
)
用例:假設我想寫一個 gatewayfilter
來考慮目前使用者的角色並改變交換:
(exchange, chain) -> /* some filtering logic */
我將其投射到 authentication
。就我而言,主體實際上是 usernamepasswordauthenticationtoken
,即 authentication
子類型
((Authentication) principal).getAuthorities()
以上是是否可以從 ServerWebExchange 檢索角色?的詳細內容。更多資訊請關注PHP中文網其他相關文章!