类org.springframework.boot.autoconfigure.security.oauth2.resource.UserInfoRestTemplateFactory源码实例Demo

下面列出了怎么用org.springframework.boot.autoconfigure.security.oauth2.resource.UserInfoRestTemplateFactory的API类实例代码及写法,或者点击链接到github查看源代码。

@Test
public void userInfoLoadBalancedNoRetry() throws Exception {
	this.context = new SpringApplicationBuilder(ClientConfiguration.class)
			.properties("spring.config.name=test", "server.port=0",
					"spring.cloud.gateway.enabled=false",
					"security.oauth2.resource.userInfoUri:https://nosuchservice",
					"security.oauth2.resource.loadBalanced=true")
			.run();

	assertThat(
			this.context.containsBean("loadBalancedUserInfoRestTemplateCustomizer"))
					.isTrue();
	assertThat(this.context
			.containsBean("retryLoadBalancedUserInfoRestTemplateCustomizer"))
					.isFalse();

	OAuth2RestTemplate template = this.context
			.getBean(UserInfoRestTemplateFactory.class).getUserInfoRestTemplate();
	ClientHttpRequest request = template.getRequestFactory()
			.createRequest(new URI("https://nosuchservice"), HttpMethod.GET);
	expected.expectMessage("No instances available for nosuchservice");
	request.execute();
}
 
private OAuth2ClientAuthenticationProcessingFilter oauth2SsoFilter(OAuth2SsoProperties sso) {
	OAuth2RestOperations restTemplate = this.applicationContext.getBean(UserInfoRestTemplateFactory.class)
			.getUserInfoRestTemplate();
	ResourceServerTokenServices tokenServices = this.applicationContext.getBean(ResourceServerTokenServices.class);
	OAuth2ClientAuthenticationProcessingFilter filter = new OAuth2ClientAuthenticationProcessingFilter(
			sso.getLoginPath());
	filter.setRestTemplate(restTemplate);
	filter.setTokenServices(tokenServices);
	filter.setApplicationEventPublisher(this.applicationContext);
	return filter;
}
 
@Bean
OAuth2RestTemplate restTemplate(UserInfoRestTemplateFactory templateFactory) {
    return templateFactory.getUserInfoRestTemplate();
}
 
 类方法
 同包方法