一、鑑權類:UserAuthFilter
springBoot被稱爲開箱即用,是因爲許多代碼都幫開發者實現了,就連用戶鑑權部分都幫我們寫好了,如需自定義過濾器,則繼承UserAuthFilter類即可。其用戶鑑權的主要邏輯都在UserAuthFilter類的packageRequest((ParameterRequestWrapper requestWrapper, HttpServletResponse httpServletResponse))方法中,其鑑權中心可在application.yaml或application.properties配置文件中自行配置,例如:
看的出可通過isNeedAuth參數打開或關閉鑑權功能,還可以通過參數excludeUrl實現特定url的添加例外(不進行鑑權)
二、鑑權過程:
但是在閱讀UserAuthFilter類中查看源碼時發現,其鑑權時收穫取了httpHeader中Cookie的token,然後再用這個token發送到鑑權中心去做校驗,源碼如下:
三、使用postman發送PUT請求
需要將token放在header裏面去,不要使用url的問號傳參方式。這樣後臺就可以正常獲取到該token的值,否則將無法獲取到token,導致出現 請重新登錄的情況!
四、在代碼中攜帶token發送put請求
需要在http.header中加入Cookie,如下: