我正在编写Oauth客户端,该客户端正尝试使用“客户端证书”授予类型使用OAUTH 2.0访问外部服务
我们正尝试将Oauth2RestTemplate用于同一内容。
根据外部服务的规范,我们需要在标头中发送APIKEY以验证资源。
我们已如下配置客户凭证Bean:
ClientCredentialsResourceDetails resourceDetails = new
ClientCredentialsResourceDetails();
resourceDetails.setAccessTokenUri("**");
resourceDetails.setClientId("**"); resourceDetails.setClientSecret("**");
resourceDetails.setGrantType("client_credentials");
resourceDetails.setScope(Arrays.asList("public"));
通过OAuth2Resttemplate调用资源时,我正在按以下方式在标头中发送APIKEY。
headers1.add("Authorization", "Bearer " + token);
headers1.add("Content-Type", "application/json");
headers1.add("apikey", "**");
headers1.setContentType(MediaType.APPLICATION_JSON);
HttpEntity<RequestSample> entity = new HttpEntity<ResponseObject>(RequestSample, headers1);
ResponseEntity<String> response = oauth2RestTemplate.exchange(url,HttpMethod.POST,
entity, String.class);
当我像上面的代码一样在标头中发送apikey时,由于无法解析Api密钥而出现错误。
如何在通过OAuth2Resttemplate进行调用时发送APIKey in标头?我在这里想念东西吗?
任何帮助将不胜感激!
注意** 我使用RestTemplate成功访问了资源,即第一个请求是通过访问令牌uri获取访问令牌,而下一个请求是访问资源的相同令牌。 在这里,对于RestTemplate,这两个请求我都在标头中发送了apikey。