Retrofit2 HttpLoggingInterceptor logcat的 [英] Retrofit2 HttpLoggingInterceptor Logcat

查看:1786
本文介绍了Retrofit2 HttpLoggingInterceptor logcat的的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大概是新手的问题,但我不知道在那里我居然赶在日志猫的日志。有没有我放一个记录,一个特殊的正则表达式使用等,这是我的拦截器看起来像一个特定的地方:

  HttpLoggingInterceptor拦截器=新HttpLoggingInterceptor();
        interceptor.setLevel(HttpLoggingInterceptor.Level.BODY);        。OkHttpClient okClient =新OkHttpClient.Builder()addInterceptor(拦截).build();        //改造安装
        改造客户=新retrofit2.Retrofit.Builder()
                .baseUrl(BASE_URL)
                .addConverterFactory(GsonConverterFactory.create())
                .client(okClient)
                。建立();

这是一个API调用在身体为空

  retrofit2.Call< GeneralTokenResponse> generalTokenResponseCall = ApiInterface.getGeneralAccessToken(ApiGeneral.API_VERSION);
        generalTokenResponseCall.enqueue(新retrofit2.Callback< GeneralTokenResponse>(){
            @覆盖
            公共无效onResponse(retrofit2.Call< GeneralTokenResponse>打电话,retrofit2.Response< GeneralTokenResponse>响应){
                Log.d(调试,体+ response.body());            }            @覆盖
            公共无效onFailure处(retrofit2.Call< GeneralTokenResponse>打电话,可抛出T){            }
        });


解决方案

我用这样:

  //初始化okhttp 3记录仪
    HttpLoggingInterceptor记录=新HttpLoggingInterceptor(新HttpLoggingInterceptor.Logger(){
        @覆盖公共无效的日志(字符串消息){
            Log.d(MyTag的,OkHttp:+消息);
        }
    });
    logging.setLevel(HttpLoggingInterceptor.Level.BODY);

Probably a novice question but I'm wondering where I actually catch the logs in log cat. Is there a particular place I put a log, a special regex to use etc. This is what my interceptor looks like:

HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor();
        interceptor.setLevel(HttpLoggingInterceptor.Level.BODY);

        OkHttpClient okClient = new OkHttpClient.Builder().addInterceptor(interceptor).build();

        // Retrofit setup


        Retrofit client = new retrofit2.Retrofit.Builder()
                .baseUrl(BASE_URL)
                .addConverterFactory(GsonConverterFactory.create())
                .client(okClient)
                .build();

And here is an api call where the body is null

 retrofit2.Call<GeneralTokenResponse> generalTokenResponseCall = ApiInterface.getGeneralAccessToken(ApiGeneral.API_VERSION);
        generalTokenResponseCall.enqueue(new retrofit2.Callback<GeneralTokenResponse>() {
            @Override
            public void onResponse(retrofit2.Call<GeneralTokenResponse> call, retrofit2.Response<GeneralTokenResponse> response) {
                Log.d("DEBUG", "body: "+response.body());

            }

            @Override
            public void onFailure(retrofit2.Call<GeneralTokenResponse> call, Throwable t) {

            }
        });

解决方案

I use so:

    // init okhttp 3 logger
    HttpLoggingInterceptor logging = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() {
        @Override public void log(String message) {
            Log.d("MyTAG", "OkHttp: " + message);
        }
    });
    logging.setLevel(HttpLoggingInterceptor.Level.BODY);

这篇关于Retrofit2 HttpLoggingInterceptor logcat的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆