我想要访问暴雪开发的Api。不幸的是,我不能继续进行oauth2身份验证。
我想我已经尝试了所有可能的配置组合,但都没有成功。我正在尝试实现如下所述的客户端凭据流:https://develop.battle.net/documentation/guides/using-oauth/client-credentials-flow
我当前的配置代码
@Configuration
@EnableOAuth2Client
public class OAuth2Configuration {
@Bean
public OAuth2ProtectedResourceDetails oauth2ProtectedResourceDetails(){
AuthorizationCodeResourceDetails details = new AuthorizationCodeResourceDetails();
details.setClientId("clientid");
details.setAccessTokenUri("https://us.battle.net/oauth/token");
details.setClientSecret("clientsecret");
details.setGrantType("client_credentials");
return details;
}
@Bean
public OAuth2RestTemplate oauth2RestTemplate(OAuth2ClientContext oauth2ClientContext,
OAuth2ProtectedResourceDetails details) {
return new OAuth2RestTemplate(details, oauth2ClientContext);
}
}
测试客户端:
@Service
public class WoWItemClient {
@Autowired
private RestTemplate restTemplate;
public Item getItems(){
String uri = "https://eu.api.blizzard.com/data/wow/item/19019";
String result = restTemplate.getForObject(uri, String.class);
System.out.println(result);
return null;
}
}
使用这些设置时,我会得到以下错误:
Unable to obtain a new access token for resource 'null'. The provider manager is not configured to support it.
有没有人能给我展示一个有效的例子?
发布于 2019-08-19 01:26:27
我自己想出了答案。感谢每一个不辞辛劳的人。
总的来说,有两个问题:
使用uri的https://us.battle.net/oauth/token
https://stackoverflow.com/questions/57544222
复制相似问题