首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Spring Cloud Security的核心组件-Cloud OAuth2 Client示例

Spring Cloud Security的核心组件-Cloud OAuth2 Client示例

原创
作者头像
堕落飞鸟
发布2023-04-13 07:31:31
发布2023-04-13 07:31:31
4590
举报
文章被收录于专栏:飞鸟的专栏飞鸟的专栏

示例:

代码语言:javascript
复制
@RestController
public class ExampleController {

    private final OAuth2AuthorizedClientService authorizedClientService;

    public ExampleController(OAuth2AuthorizedClientService authorizedClientService) {
        this.authorizedClientService = authorizedClientService;
    }

    @GetMapping("/example")
    public String example(OAuth2AuthenticationToken authentication) {
        OAuth2AuthorizedClient authorizedClient = authorizedClientService.loadAuthorizedClient(
            authentication.getAuthorizedClientRegistrationId(),
            authentication.getName());
        String accessToken = authorizedClient.getAccessToken().getTokenValue();
        return "Access token: " + accessToken;
    }
}

在上面的示例中,我们注入了一个OAuth2AuthorizedClientService,它用于管理已授权的客户端信息。在example方法中,我们使用loadAuthorizedClient方法获取已授权的客户端信息,并从中提取访问令牌。这个访问令牌可以用来访问受保护的资源。

测试

现在,我们已经完成了所有必要的配置和代码,可以启动应用程序并尝试访问受保护的资源。可以使用以下命令来启动应用程序:

代码语言:javascript
复制
mvn spring-boot:run

然后,在浏览器中输入以下URL:

代码语言:javascript
复制
http://localhost:8080/example

如果一切正常,你应该会看到类似以下的输出:

代码语言:javascript
复制
Access token: <access-token>

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 示例:
  • 测试
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档