<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      springboot~security中自定義forbidden和unauthorized返回值

      對(duì)于spring-security來(lái)說(shuō),當(dāng)你訪問(wèn)一個(gè)受保護(hù)資源時(shí),需要檢查你的token,當(dāng)沒(méi)有傳遞,或者傳遞的token有錯(cuò)誤時(shí),將出現(xiàn)401unauthorized異常;當(dāng)你傳遞的token是有效的,但解析后并沒(méi)有訪問(wèn)這個(gè)資源的權(quán)限時(shí),將返回403forbidden的異常,而你通過(guò)攔截器@RestControllerAdvice是不能重寫這兩個(gè)異常消息的,我們下面介紹重寫這兩種消息的方法。

      兩個(gè)接口

      • AccessDeniedHandler 實(shí)現(xiàn)重寫403的消息
      • AuthenticationEntryPoint 實(shí)現(xiàn)重寫401的消息

      代碼

      • CustomAccessDeineHandler
      public class CustomAccessDeineHandler implements AccessDeniedHandler {
      
        @Override
        public void handle(HttpServletRequest request, HttpServletResponse response,
                           AccessDeniedException accessDeniedException) throws IOException, ServletException {
          response.setCharacterEncoding("utf-8");
          response.setContentType("application/json;charset=utf-8");
          response.getWriter().print(JSONObject.toJSONString(CommonResult.forbiddenFailure("沒(méi)有訪問(wèn)權(quán)限!")));
        }
      
      }
      
      • CustomAuthenticationEntryPoint
      public class CustomAuthenticationEntryPoint implements AuthenticationEntryPoint {
      
        @Override
        public void commence(HttpServletRequest request, HttpServletResponse response,
                             AuthenticationException authException) throws IOException, ServletException {
          response.setCharacterEncoding("utf-8");
          response.setContentType("application/json;charset=utf-8");
          response.getWriter().print(JSONObject.toJSONString(CommonResult.unauthorizedFailure("需要先認(rèn)證才能訪問(wèn)!")));
        }
      
      }
      
      • WebSecurityConfig.configure中添加注入代碼
        // 401和403自定義
        http.exceptionHandling().authenticationEntryPoint(new CustomAuthenticationEntryPoint())
            .accessDeniedHandler(new CustomAccessDeineHandler());
      
      • 效果
      //沒(méi)有傳token,或者token不合法
      {
          "code": 401,
          "message": "需要先認(rèn)證才能訪問(wèn)!"
      }
      //token中沒(méi)有權(quán)限
      {
          "code": 403,
          "message": "沒(méi)有訪問(wèn)權(quán)限!"
      }
      
      posted @ 2022-03-28 11:25  張占嶺  閱讀(1115)  評(píng)論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 在线播放亚洲成人av| 粉嫩国产av一区二区三区| 国产真实露脸乱子伦原著| 激情在线一区二区三区视频| 福利一区二区在线播放 | 亚洲午夜伦费影视在线观看| 国产亚洲精品综合一区二区| 蜜桃草视频免费在线观看| 久久亚洲精品11p| 亚洲爆乳少妇无码激情| 女人下边被添全过视频的网址 | 东京热人妻无码一区二区av| 国产精品无遮挡猛进猛出| 99九九视频高清在线| 久久国产精品伊人青青草| 国产乱码精品一区二区三| 又黄又爽又色的少妇毛片| 极品美女扒开粉嫩小泬图片| 色吊丝二区三区中文字幕| 国产99在线 | 亚洲| 亚洲av午夜成人片| 国产人妻大战黑人第1集| 亚洲av激情综合在线| 实拍女处破www免费看| 亚洲国产精品一区二区久久| 免费看的一级黄色片永久| 国产AV福利第一精品| 美女自卫慰黄网站| 色欲av久久一区二区三区久| 99久久婷婷国产综合精品| 国产成人剧情AV麻豆果冻| 人妻激情偷乱一区二区三区| 国产熟女真实乱精品51| 成人午夜免费无码视频在线观看| 亚洲国产五月综合网| 中文字幕自拍偷拍福利视频| 人妻系列中文字幕精品| 国产精品一区二区黄色片| 精品一区二区免费不卡| XXXXXHD亚洲日本HD| 日韩中文字幕亚洲精品|