我可以在Spring RestTemplate for Android中使用Stetho吗?

时间:2016-05-06 18:47:22

标签: android spring facebook resttemplate stetho

Facebook的stetho似乎只对OKHTTP提供了很大的支持,对于Android的所有其他网络框架几乎没有支持:http://facebook.github.io/stetho/#integrations

我正在使用Spring RestTemplate,我想知道如何让我和Spring一起玩得很好。我知道我可以在Spring Resttemplate中使用OKHTTP,但我更喜欢保持我的应用程序很小,并且希望避免在我的应用程序中添加额外的网络库:

http://docs.spring.io/autorepo/docs/spring-android/2.0.0.BUILD-SNAPSHOT/reference/html/rest-template.html

  

基于OkHttp的额外ClientHttpRequestFactory可用作   两个本地客户的替代品。 RestTemplate可以   配置为通过RestTemplate使用OkHttpRequestFactory   构造函数或通过设置requestFactory属性。它受到支持   在Android 2.3(姜饼)和更新,但为了使用它,   您必须在项目中包含OkHttp依赖项。

看来我的Spring RestTemplate使用HttpURLConnection进行调用,似乎有关于如何使用HttpURLConnection进行stetho工作的说明,但说明非常简短:

  

如果您使用的是HttpURLConnection,则可以使用   StethoURLConnectionManager可以帮助您进行集成   应该意识到这种方法有一些警告。在   特别是,您必须明确地将Accept-Encoding:gzip添加到   请求标头并手动处理压缩响应   Stetho报告压缩的有效载荷大小。

但是,我担心上面的说明在我的情况下不起作用,因为我使用clienthttprequestinterceptor发送我的请求并在发送之前添加授权标头。这会导致GZIP压缩根据此线程发生两次:

RestTemplate with ClientHttpRequestInterceptor causes GZIP compression twice

有没有人成功使用Spring RestTemplate for Android的stetho?目前,解决方法是使用Charles Proxy(付费替代方案)来检测所有网络呼叫而不是stetho。

0 个答案:

没有答案