有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

带有spring security 5和oauth2的java日历客户端

我成功地用outh2配置了GoogleSpringSecurity5以连接到google。我有能力保存访问令牌。在我的应用程序的第一步中,我们不请求日历权限。我们不想等到以后再得到它们。我见过许多使用webClient、resttemplate的奇怪示例,这些示例已经被弃用

我正在寻找一种解决方案,在该解决方案中,我可以使用应用程序的access_令牌和refresh_令牌请求访问日历,然后我可以下载例如事件

我用的是reactjs。我希望它将我重定向到谷歌网站,给我权限,然后能够下载事件后,再次点击首页

编辑: 答案是:

Credential credential = new Credential(BearerToken.authorizationHeaderAccessMethod());
        credential.setAccessToken("your token");
        credential.setRefreshToken("your refresh token");
        httpTransport = GoogleNetHttpTransport.newTrustedTransport();
        client = new com.google.api.services.calendar.Calendar.Builder(httpTransport, JSON_FACTORY, credential)
                .setApplicationName(APPLICATION_NAME).build();

共 (1) 个答案

  1. # 1 楼答案

    Google支持incremental authorization,因此如果您使用新权限和include_granted_scopes参数设置为true再次启动OAuth流,您可以将新权限添加到现有授权中

    或者,您可以使用像Xkit这样的托管解决方案来添加这种集成。它为您处理OAuth流(内置增量授权)以及刷新令牌,并与React进行本机集成。(披露:我在那里工作!)