【问题标题】:Pass cookie in OAuth2RestTemplate在 OAuth2RestTemplate 中传递 cookie
【发布时间】:2017-11-22 02:16:56
【问题描述】:

我正在使用带有 Java 8 的 Spring boot 1.5.3。我正在使用 Oauth2RestClient 从一个休息端点调用远程休息端点。调用成功,但我无法在请求中传递 OAUTH-ACCESS-TOKEN cookie。你能指导我如何在 oauth2RestTemplate 中传递这个 cookie。

    private HttpEntity<T> getHttpEntity(OAuth2RestClientDetails oAuth2RestClientDetails, T requestData) {
        HttpEntity<T> httpEntity = null;
        HttpHeaders httpHeaders = getHttpHeaders(oAuth2RestClientDetails);
        if (requestData != null && httpHeaders.size() > 0) {
            httpEntity = new HttpEntity<T>(requestData, httpHeaders);
        } else if (requestData != null) {
            httpEntity = new HttpEntity<T>(requestData);
        }
        return httpEntity;
    }

问题已解决

以下部分代码有问题:

private HttpEntity<T> getHttpEntity(OAuth2RestClientDetails 
  oAuth2RestClientDetails, T requestData) {
    HttpEntity<T> httpEntity = null;
    HttpHeaders httpHeaders = getHttpHeaders(oAuth2RestClientDetails);
    if (requestData != null && httpHeaders.size() > 0) {
        httpEntity = new HttpEntity<T>(requestData, httpHeaders);
    } else if (requestData != null) {
        httpEntity = new HttpEntity<T>(requestData);
    }
    return httpEntity;
}

它有条件地发送 httpHeaders,即当 requestData 不为空且标头大小大于零时。通过纠正这个逻辑,问题就解决了。

谢谢。

【问题讨论】:

  • 问题已解决。有问题的解释。
  • 请在下面发布答案,而不是破坏问题本身。请恢复编辑并发布自我回答。见blog.stackoverflow.com/2011/07/…

标签: spring oauth spring-security-oauth2


【解决方案1】:

这是一个社区 Wiki 答案,替换了已编辑为原始问题 as recommended by Meta 的答案。该解决方案最初由提问者发布。

以下部分代码有问题:

private HttpEntity<T> getHttpEntity(OAuth2RestClientDetails 
  oAuth2RestClientDetails, T requestData) {
    HttpEntity<T> httpEntity = null;
    HttpHeaders httpHeaders = getHttpHeaders(oAuth2RestClientDetails);
    if (requestData != null && httpHeaders.size() > 0) {
        httpEntity = new HttpEntity<T>(requestData, httpHeaders);
    } else if (requestData != null) {
        httpEntity = new HttpEntity<T>(requestData);
    }
    return httpEntity;
}

它有条件地发送 httpHeaders,即当 requestData 不为空且标头大小大于零时。通过纠正这个逻辑,问题就解决了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-07-26
    • 2012-08-06
    • 2013-01-11
    • 2022-01-13
    • 2013-11-15
    • 2014-08-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多