是否可以向现有的Okhttp
实例添加/删除认证者和/或拦截器?如果是,如何?Okhttp 3.x动态地添加/删除认证者/拦截者
回答
不,这是不可能的。
但是,您可以从现有客户端创建构建器,并对其进行更改。这将共享调度器,连接池等
OkHttpClient.Builder clientBuilder = client1.newBuilder();
clientBuilder.networkInterceptors().add(0, serviceInterceptor);
OkHttpClient client2 = clientBuilder.build();
有用于调节客户端的超时在Javadoc https://square.github.io/okhttp/3.x/okhttp/okhttp3/OkHttpClient.html
问题是我通常通过依赖注入将okhttp创建为单个实例对象,因此每次添加/删除拦截器时都无法将单个实例与另一个“交换”。 –
我猜OP是指“一个现有的Okhttp实例” – Onheiron
它可能不适合你,但它是答案。对不起,它不适合 –
- 1. OkHttp 3拦截列表
- 2. 添加和删除拦截器
- 3. 用3个验证者删除
- 4. 拦截器vs装饰者
- 5. 聚合物。动态添加或删除观察者的方式
- 6. 不能删除或者添加主键
- 7. 如何动态地添加/删除eventSources
- 8. symfony 3添加确认框删除
- 9. GIT作者认证
- 10. 在实体框架中添加和删除拦截器
- 11. Android - OkHttp拦截器调用onFailure
- 12. 使用Retrofit:2.0与Okhttp(拦截器)
- 13. Retrofit2:OkHttp拦截器中的@Path参数
- 14. 表单验证 - 添加/删除Jquery动态添加的内容
- 15. 是否可以动态地在AndroidManifest中添加提供者?
- 16. 动态属性拦截
- 17. 什么是认证拦截在角
- 18. nginx代理服务器认证拦截
- 19. AngularJS简单认证拦截器
- 20. 使用Outlook日历rest API添加与会者删除较旧的与会者
- 21. 初学者认证问题
- 22. Hyperledger作曲者和认证
- 23. 拦截器拦截不C#,城堡动态代理
- 24. 在WordPress中删除渲染拦截JavaScript
- 25. Outlook 2007 - 拦截邮件删除命令
- 26. 拦截JSF验证
- 27. 在OpenLayers中动态添加和删除轨道段3
- 28. 删除和添加保证金滚动
- 29. 在Aurelia动态地添加验证
- 30. 向NSNotificationCenter中添加/删除观察者的最佳做法
嗯示例,API是相当说明:https://github.com/square/okhttp/wiki /拦截器#拦截器应用程序 它显示了如何在okhttp实例创建期间添加拦截器。但是我无法找到一种方法来在未创建新实例的情况下添加它。 –