首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏JAVA杂谈

    SpringCloud Alibaba微服务实战十八 - Oauth2.0 自定义授权模式

    requestFactory = requestFactory(); List<TokenGranter> tokenGranters = new ArrayList<TokenGranter> requestFactory) { this(authenticationManager, tokenServices, clientDetailsService, requestFactory requestFactory, String grantType) { super(tokenServices, clientDetailsService, requestFactory requestFactory = requestFactory(); List<TokenGranter> tokenGranters = new ArrayList(); */ private OAuth2RequestFactory requestFactory() { return new DefaultOAuth2RequestFactory

    2.9K30发布于 2020-07-31
  • 来自专栏码匠的流水账

    聊聊spring cloud的LoadBalancerAutoConfiguration

    ( LoadBalancerClient loadBalancerClient, LoadBalancerRequestFactory requestFactory ) { return new LoadBalancerInterceptor(loadBalancerClient, requestFactory); } loadBalancerClient, LoadBalancerRetryProperties properties, LoadBalancerRequestFactory requestFactory { this.loadBalancer = loadBalancer; this.lbProperties = lbProperties; this.requestFactory = requestFactory; this.lbRetryFactory = lbRetryFactory; } @Override public ClientHttpResponse

    1.2K20发布于 2018-09-17
  • 来自专栏阿杰

    给RestTemplate加全局日志打印

    = null, "No standard HTTP method"); ClientHttpRequest delegate = requestFactory.createRequest return delegate.execute(); } }}​执行时序图图片选择方案-RequestFactory如果需要对响应流进行包装实现可重用. = null; if (this.requestFactory ! = null) { requestFactory = this.requestFactory.get(); } else if (this.detectRequestFactory ) { requestFactory = new ClientHttpRequestFactorySupplier().get(); } if (requestFactory

    1.7K41编辑于 2023-08-08
  • 来自专栏微服务

    SpringCloud @LoadBalanced 负载均衡原理

    LoadBalancerInterceptor loadBalancerInterceptor(LoadBalancerClient loadBalancerClient,LoadBalancerRequestFactory requestFactory ) { return new LoadBalancerInterceptor(loadBalancerClient, requestFactory); } @Bean @ ClientHttpRequestInterceptor {private LoadBalancerClient loadBalancer;private LoadBalancerRequestFactory requestFactory ;public LoadBalancerInterceptor(LoadBalancerClient loadBalancer, LoadBalancerRequestFactory requestFactory ) {this.loadBalancer = loadBalancer;this.requestFactory = requestFactory;}public LoadBalancerInterceptor

    36110编辑于 2024-12-22
  • 来自专栏有文化的技术人

    SpringCloudRibbon负载均衡实现原理

    = new HttpComponentsClientHttpRequestFactory(); requestFactory.setHttpClient(httpClient); RestTemplate ) { return new LoadBalancerInterceptor(loadBalancerClient, requestFactory); } @Bean ) { return new LoadBalancerInterceptor(loadBalancerClient, requestFactory); } 这里的拦截器注入了负载均衡客户端,那么这个客户端就是 ) { return new InterceptingClientHttpRequest(requestFactory, this.interceptors, uri, httpMethod); } > interceptors, URI uri, HttpMethod method) { this.requestFactory = requestFactory; this.interceptors

    44730编辑于 2022-10-27
  • 来自专栏程序猿 Damon 带你进阶全栈

    注意了,ribbon负载均衡器将被替换

    ", Integer.class, 15000)); requestFactory.setConnectTimeout(env.getProperty("client.http.request.connectTimeout ", Integer.class, 3000)); RestTemplate rt = new RestTemplate(requestFactory); return /就不能用ip等形式来请求其他服务 @Bean public RestTemplate restTemplate() { SimpleClientHttpRequestFactory requestFactory ", Integer.class, 15000)); requestFactory.setConnectTimeout(env.getProperty("client.http.request.connectTimeout ", Integer.class, 3000)); RestTemplate rt = new RestTemplate(requestFactory); return

    2.1K10发布于 2021-11-19
  • 来自专栏哈利迪ei

    Android |《看完不忘系列》之Retrofit

    RequestFactory requestFactory = RequestFactory.parseAnnotations(retrofit, method); //检查:articleList return HttpServiceMethod.parseAnnotations(retrofit, method, requestFactory); } 先看1. RequestFactory.parseAnnotations, //RequestFactory.java static RequestFactory parseAnnotations(Retrofit return new RequestFactory(this); } } 得到RequestFactory后,看2. requestFactory) { //省略kotlin协程逻辑...

    1.1K10发布于 2020-08-20
  • 来自专栏c++与qt学习

    Eurkea,Ribbon和RestTemplate是如何结合到一起完成服务注册与发现功能的? --上

    , @Nullable List<ClientHttpRequestInterceptor> interceptors) { super(requestFactory); this.interceptors ) { //最终包装行为体现在InterceptingClientHttpRequest中 return new InterceptingClientHttpRequest(requestFactory ClientHttpRequest delegate = requestFactory.createRequest(request.getURI(), method); ... ; public LoadBalancerInterceptor(LoadBalancerClient loadBalancer, LoadBalancerRequestFactory requestFactory ) { this.loadBalancer = loadBalancer; this.requestFactory = requestFactory; } public LoadBalancerInterceptor

    77620编辑于 2023-02-13
  • 来自专栏Android补给站

    重温Retrofit源码,笑看协程实现

    相关的method注解解析都放到ServiceMethod中,有两个关键函数调用,分别是RequestFactory与HttpServiceMethod的parseAnnotations()方法。 static <T> ServiceMethod<T> parseAnnotations(Retrofit retrofit, Method method) { RequestFactory requestFactory ); } RequestFactory 首先RequestFactory中的parseAnnotations()最终通过build()方法来构建一个RequestFactory,用来保存解析出来的方法信息 return new RequestFactory(this); } 可以看到主要分为两步: 通过parseMethodAnnotation来解析出请求的方式,例如GET、POST与PUT等等 requestFactory) { boolean isKotlinSuspendFunction = requestFactory.isKotlinSuspendFunction;

    67830发布于 2020-09-24
  • 来自专栏同步文章

    Springsecurity从当前请求对象中获取用户信息

    GenericFilterBean { private String rolePrefix = "ROLE_"; private HttpServletRequestFactory requestFactory } private void updateFactory() { String rolePrefix = this.rolePrefix; this.requestFactory private HttpServletRequestFactory createServlet3Factory(String rolePrefix) { HttpServlet3RequestFactory factory = new HttpServlet3RequestFactory(rolePrefix); factory.setTrustResolver(this.trustResolver factory.setLogoutHandlers(this.logoutHandlers); return factory; } } doFilter方法中调用requestFactory.create

    4.9K20编辑于 2022-10-25
  • 来自专栏翟凤玺

    RestTemplate推送数据无响应的解决办法

    修改推送代码(方式一) SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory(); requestFactory.setConnectTimeout(20000); requestFactory.setReadTimeout(20000); RestTemplate restTemplate = new RestTemplate(requestFactory); 思考 有没有配置文件可以进行配置,而不用每次set配置呢?

    2.6K21发布于 2020-10-29
  • 来自专栏个人分享

    RestTemplate

    private RestTemplate createRestTemplate(){ HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory() requestFactory.setConnectTimeout(connectTimeout); requestFactory.setReadTimeout (readTimeout); RestTemplate restTemplate = new RestTemplate(requestFactory); restTempate.getMessageConverters

    1K20发布于 2018-09-06
  • 来自专栏小灰灰

    【SpringBoot WEB 系列】RestTemplate 之超时设置

    timeOut() { RestTemplate restTemplate = new RestTemplate(); SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory(); requestFactory.setConnectTimeout(1000); requestFactory.setReadTimeout (1000); restTemplate.setRequestFactory(requestFactory); long start = System.currentTimeMillis

    5.8K30发布于 2020-07-07
  • 来自专栏Jacob

    RestTemplate 发送 Https 请求调用

    .setSSLSocketFactory(csf) .build(); HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(); requestFactory.setHttpClient (httpClient); RestTemplate restTemplate = new RestTemplate(requestFactory); return restTemplate

    3.6K30发布于 2020-08-05
  • 来自专栏码匠的流水账

    restTemplate访问https

    .setSSLSocketFactory(csf) .build(); HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(); requestFactory.setHttpClient (httpClient); RestTemplate restTemplate = new RestTemplate(requestFactory); return restTemplate

    7.3K10发布于 2018-09-17
  • 来自专栏web前端教室

    javascript设计模式 -- 工厂模式

    先来段代码意思一下: function RequestFactory( url, type, data ){ if( data==undefined ) data = ''; this.getData function(){ $.ajax({ url:url, type: type, data: data, success:success }) } } var req1 = new RequestFactory ('api.xx.com', 'post', {data:123}); req1.getData(); var req2 = new RequestFactory('img.xx.com', 'get'

    74770发布于 2018-02-06
  • 来自专栏实用技术

    给RestTemplate添加拦截器记录请求响应

    BufferingClientHttpRequestFactory @Bean public RestTemplate restTemplate() { SimpleClientHttpRequestFactory requestFactory BufferingClientHttpRequestFactory simpleBufferingClientHttpRequest = new BufferingClientHttpRequestFactory(requestFactory ); requestFactory.setConnectTimeout(5000); requestFactory.setReadTimeout(3500);

    1.8K20编辑于 2022-09-02
  • 来自专栏终身开发者

    源码分析Retrofit请求流程

    requestFactory = RequestFactory.parseAnnotations(retrofit, method); //获取方法的返回类型 Type returnType } //最终使用到HttpServiceMethod类 return HttpServiceMethod.parseAnnotations(retrofit, method, requestFactory requestFactory) { CallAdapter<ResponseT, ReturnT> callAdapter = createCallAdapter(retrofit, method ); okhttp3.Call.Factory callFactory = retrofit.callFactory; return new HttpServiceMethod<>(requestFactory @Override ReturnT invoke(Object[] args) { return callAdapter.adapt( new OkHttpCall<>(requestFactory

    54420发布于 2019-07-30
  • 来自专栏个人开发

    OpenFeign的9个坑,每个都能让你的系统奔溃

    public class RestTemplateConfiguration { @Bean public OkHttp3ClientHttpRequestFactory okHttp3RequestFactory (){ OkHttp3ClientHttpRequestFactory requestFactory = new OkHttp3ClientHttpRequestFactory(); requestFactory.setConnectTimeout(2000); requestFactory.setReadTimeout(60000); return requestFactory; } @Bean @LoadBalanced public RestTemplate restTemplate(OkHttp3ClientHttpRequestFactory okHttp3RequestFactory){ return new RestTemplate(okHttp3RequestFactory); } } 为了使用ribbon负载均衡

    3.8K20编辑于 2022-09-23
  • 来自专栏程序员果果

    客户端负载均衡Ribbon之源码解析

    ) { return new LoadBalancerInterceptor(loadBalancerClient, requestFactory); } @Bean @ConditionalOnMissingBean LoadBalancerClient loadBalancerClient, LoadBalancerRetryProperties properties, LoadBalancerRequestFactory requestFactory loadBalancedRetryFactory) { return new RetryLoadBalancerInterceptor(loadBalancerClient, properties, requestFactory ; public LoadBalancerInterceptor(LoadBalancerClient loadBalancer, LoadBalancerRequestFactory requestFactory ) { this.loadBalancer = loadBalancer; this.requestFactory = requestFactory; } public LoadBalancerInterceptor

    1.5K50发布于 2019-05-28
领券