是否可以向現有的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. 攔截FILESytemCall刪除
- 7. 在UICollectionViewCell中添加/刪除觀察者
- 8. 不能刪除或者添加主鍵
- 9. 如何動態地添加/刪除eventSources
- 10. 攔截鍵按刪除
- 11. 爲AFNetworking/Alamfire添加攔截器ios
- 12. symfony 3添加確認框刪除
- 13. GIT作者認證
- 14. 在實體框架中添加和刪除攔截器
- 15. Android - OkHttp攔截器調用onFailure
- 16. Retrofit2:OkHttp攔截器中的@Path參數
- 17. 用OkHttp 2.2和攔截器改造1.9
- 18. 使用Retrofit:2.0與Okhttp(攔截器)
- 19. 無法解析:okhttp登錄攔截器
- 20. 動態添加/刪除類
- 21. 刪除默認流水線貢獻者
- 22. 表單驗證 - 添加/刪除Jquery動態添加的內容
- 23. 刪除動態添加腳本動態
- 24. 是否可以動態地在AndroidManifest中添加提供者?
- 25. 使用javascript動態添加和刪除div在div內的x按鈕上動態添加和刪除
- 26. 動態屬性攔截
- 27. 什麼是認證攔截在角
- 28. nginx代理服務器認證攔截
- 29. AngularJS簡單認證攔截器
- 30. 添加和使用BlockingCollection刪除多線程生產者和消費者在VB.NET
嗯示例,API是相當說明:https://github.com/square/okhttp/wiki /攔截器#攔截器應用程序 它顯示瞭如何在okhttp實例創建期間添加攔截器。但是我無法找到一種方法來在未創建新實例的情況下添加它。 –