android - 改造拦截器错误

标签 android retrofit2

我想将 facebook 访问 token 添加到改造 (2 beta 3) 请求中,但未添加访问 token 。 我可以成功地添加拦截器来改造 1.9,但是在改造 2 中它有错误,有什么解决办法吗?

protected Retrofit getRestAdapter() {
    OkHttpClient client = new OkHttpClient.Builder()
            .addInterceptor(
                    new Interceptor() {
                        @Override
                        public Response intercept(Interceptor.Chain chain) throws IOException {
                            Request original = chain.request();

                            String sessionId = getSessionId(); // get access token

                            // Request customization: add request headers
                            Request.Builder requestBuilder = original.newBuilder()
                                    .header("Cookie", sessionId)
                                    .method(original.method(), original.body());

                            Request request = requestBuilder.build();
                            return chain.proceed(request);
                        }
                    })
            .build();

    if (retrofit == null) {
        retrofit = new Retrofit.Builder()
                .baseUrl("http://tbkha.com/api/")
                .addConverterFactory(GsonConverterFactory.create())
                .client(client)
                .build();
    }

    return retrofit;
}

最佳答案

在 retrofit retrofit 2.0 中你添加这样的拦截器:

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

OkHttpClient client = new OkHttpClient.Builder()
                .addInterceptor(logging).build();

Retrofit retrofit = new Retrofit.Builder()
                .baseUrl(baseURL)
                .client(client)
                .build();

查看此链接了解详情 https://futurestud.io/blog/retrofit-2-log-requests-and-responses

类似问题:

App crash on HttpLoggingInterceptor

Retrofit2 HttpLoggingInterceptor Logcat

关于android - 改造拦截器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35251544/

相关文章:

Retrofit2 - OkHttp ConnectionPool 线程增长到 100 多个线程。为什么?

安卓分页 : Using APIs with Retrofit and Gson (Crash)

java - 改造在onResponse方法之外返回null?

c# - Xamarin 'Hello Android' Quickstart 无法在 Visual Studio 2015 中初始化 Nexus 5 KitKat

android - iOS/Android 商店并从相应商店之外购买积分(无应用内购买)

java - Android 自动完成 TextView : get item position

android - 使用 RxJava2 和普通空响应错误进行改造 2

java - 如何使用 Retrofit2 将 json 解析为具有子类的类

android - 从多个选项卡中的编辑文本字段获取文本

android - 是否应该在 Activity 的 OnCreate() 上调用 locationManager.requestLocationUpdates()?