zoukankan      html  css  js  c++  java
  • 阶段5 3.微服务项目【学成在线】_day16 Spring Security Oauth2_18-认证接口开发-接口开发-service

    定义AuthController


    实现刚才写的api接口


    controller定义热requestMapping 是 / 就可以了。

    因为我们的登陆跟路径就是/auth. 这样到login就是 /auth/userlogin


    定义Service


    在controller里面注入Service。我们需要在service里面定义申请令牌的方法authService。里面需要账号、密码、clientId和CLientSecret

    clientId和clientApp已经在配置文件内配置好了。可以直接注入到Controller里面就可以了。

    通过@Value注入进来

    定义一个对象来存储令牌




    在service内定义方法

    方法叫做login



    这样方法就会在Service里面创建了

    可以把之前写的测试的方法 直接复制过来 拿来用。

    注入




    复制过来的方法 只是把获取到了令牌。并没有把令牌存储到Redis。所以建议复制来的代码 单独定义一个方法叫做申请令牌的方法



    applyToken申请令牌的方法

    还有一个获取httpBasic的方法也复制过来。


    替换为传过来的变量


    bodyMap就是我们拿到的下面令牌的整个json信息


    主方法调用,如果为空。那么就抛出异常


    再定义一个异常的错误代码

    存储到redis

    注入StringRedisTemplate


    主方法调用redis存储

    redis过期时间在配置文件内配置了

    注入过期时间

    存储redis,如果没有成功就抛出存储失败的异常。

    异常类里面再定义一个


    最终参数返回

    service认证的方法完成

  • 相关阅读:
    .NET中string和StringBuilder的区别
    Hashtable 类
    C#中null和""的区别
    Dictionary 泛型类
    宿主进程含义
    事件和委托
    关于SQLServer中索引使用及维护简介
    什么是序列化
    “锁定”语句(C# 参考)
    栈和托管堆/值类型和引用类型/强制类型转换/装箱和拆箱[C#]
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/11638114.html
Copyright © 2011-2022 走看看