当前位置: 首页 > 知识库问答 >
问题:

如何用没有SSL的刷新令牌刷新谷歌访问令牌?

夏宏旷
2023-03-14

我面临一个问题,以刷新谷歌访问令牌在服务器端。

        RestTemplate restTemplate = new RestTemplate();

        MultiValueMap<String, String> params = new LinkedMultiValueMap();

        params.add("client_id", clientSecrets.getDetails().getClientId());
        params.add("client_secret", clientSecrets.getDetails().getClientSecret());
        params.add("refresh_token", this.refreshToken);
        params.add("grant_type", "refresh_token");

        String result = restTemplate.postForObject(requestUrl, params, String.class);

我从谷歌认证服务器得到的响应只是403状态代码。信息是这样的

{"error":"internal_failure","error_description":"SSL is required to perform this operation."}

仅仅为了刷新访问令牌,在我的服务器上使用SSL是强制性的吗?它已经在我的本地服务器上测试过,没有附加任何SSL到它。

共有1个答案

宿文栋
2023-03-14

我通过为google api添加“HTTPS”协议而不是“HTTP”协议来解决这个问题

我打过电话

http://www.googleapis.com/oauth2/v4/token
https://www.googleapis.com/oauth2/v4/token
 类似资料:
  • 我想使用谷歌作为OIDC协议的id提供商。我有一个简单的应用程序。它启动,正确地重定向到谷歌,然后返回到应用程序,打印用户详细信息并将其存储在会话中。但是,这种身份验证似乎来自id令牌,并且只有1h的过期时间 我的YML:

  • 我正试图在他过期后获得一个新的访问令牌。我已将收到的信息保存在银行中,作为第一次客户访问的回报: {"access_token":"TOKEN","refresh_token":"TOKEN","token_type","承载","expires_in": 3600,"创建": 1320790426} 令牌到期后,我需要申请一个新的令牌,我这样做: 问题是总是返回以下错误:刷新OAuth2令牌时出

  • 我正在使用Cognito用户池对系统中的用户进行身份验证。成功的身份验证将提供一个ID令牌(JWT)、一个访问令牌(JWT)和一个刷新令牌。这里的文档清楚地提到了刷新令牌可以用于刷新访问令牌,但没有提到如何使用。我的问题是,一旦我的访问令牌过期,我如何使用存储的刷新令牌再次刷新我的访问令牌? 我搜索了JavaScript SDK,但找不到任何方法来做同样的事情。我肯定错过了什么。 我还想通过Lam

  • 调用execute方法时,它会引发以下异常: 谁能指出我哪里做错了?我能够从谷歌oAuth UI获得访问令牌。

  • 本文向大家介绍oauth 刷新访问令牌,包括了oauth 刷新访问令牌的使用技巧和注意事项,需要的朋友参考一下 示例 资源

  • 若授权服务器给客户端颁发了刷新令牌,客户端通过使用按附录B“application/x-www-form-urlencoded”格式在HTTP请求实体正文中发送下列UTF-8字符编码的参数向令牌端点发起刷新请求: grant_type 必需的。值必须设置为“refresh_token”。 refresh_token 必需的。颁发给客户端的刷新令牌。 scope 可选的。如3.3节所述的访问请求的范