以前版本的改造使用RestaAdapter,并提供了启用日志的功能。为什么在改型2.0中删除了该功能?
要启用日志,我必须。。
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
/** Handles Log */
retrofit.client().interceptors().add(new LoggingInterceptor());
class LoggingInterceptor implements Interceptor {
@Override
public Response intercept(Interceptor.Chain chain) throws IOException {
Request request = chain.request();
long t1 = System.nanoTime();
Logger.d(String.format("Sending request %s on %s%n%s",
request.url(), chain.connection(), request.headers()));
Response response = chain.proceed(request);
long t2 = System.nanoTime();
Logger.d(String.format("Received response for %s in %.1fms%n%s",
response.request().url(), (t2 - t1) / 1e6d, response.headers()));
// Logger.d(""+new String(response.body().bytes()));
return response;
}
这是唯一的解决办法吗?以前的规定非常方便...
OkHttpClient okHttpClient = new OkHttpClient.Builder()
.addInterceptor(new Interceptor() {
@Override
public Response intercept(Chain chain) throws IOException {
Request request = chain.request();
if (BuildConfig.DEBUG) {
Log.e(getClass().getName(), request.method() + " " + request.url());
Log.e(getClass().getName(), "" + request.header("Cookie"));
RequestBody rb = request.body();
Buffer buffer = new Buffer();
if (rb != null)
rb.writeTo(buffer);
LogUtils.LOGE(getClass().getName(), "Payload- " + buffer.readUtf8());
}
return chain.proceed(request);
}
})
.readTimeout(60, TimeUnit.SECONDS)
.connectTimeout(60, TimeUnit.SECONDS)
.build();
iIdgardServices = new Retrofit.Builder()
.baseUrl("Your Base URL")
.client(okHttpClient)
.addConverterFactory(GsonConverterFactory.create())
.build()
.create(Your Service Interface .class);
对我有用
对于登录改型2,okhttp具有以下记录器:
private OkHttpClient getOkHttpClient() {
HttpLoggingInterceptor logging = new HttpLoggingInterceptor();
if (BuildConfig.LOG_HTTP_CALLS) {
logging.setLevel(HttpLoggingInterceptor.Level.BODY);
}
return new OkHttpClient.Builder()
.addInterceptor(logging).build();
}
以及build中的依赖关系。格雷德尔
compile'com。收拾一下。okhttp3:logginginterceptor:2.1.0'
改造的目的是执行类型安全的反序列化。可能它删除了应该由http客户端执行的功能,比如日志记录。
合理地说,超文本传输协议客户端应该记录收到的响应,而不是改造。你的问题太宽泛了,广场的人应该补充更多。
我想打api:www.xyz.com/abc_cc/cc/userregister/newuser 这是我的代码: 接口: POJO类: 我得到了这样的回应: 我已经给出了正确的url,那么为什么只需要一半? 我已经试过了https://code.tutsplus.com/tutorials/sending-data-with-retrofit-2-http-client-for-android-
我们的团队决定采用改型2.0,我正在做一些初步的研究。我是这个图书馆的新手。 我想知道如何使用在我们的Android应用程序中通过改装2.0添加自定义标题。有很多教程介绍如何使用在翻新版1.X中添加标头,但由于API在最新版本中发生了很大变化,我不知道如何在新版本中适应这些方法。此外,改装尚未更新其新文档。 例如,在以下代码中,我应该如何实现类来添加额外的头?此外,未记录的对象究竟是什么?何时调用
我正在使用Reformation 2.0下载文件。问题是未调用<code>使 这是我的界面: 这是我的下载代码:
本文向大家介绍详解从Django Allauth中进行登录改造小结,包括了详解从Django Allauth中进行登录改造小结的使用技巧和注意事项,需要的朋友参考一下 大概来介绍一下 Django Allauth 改造的期间遇到的一些问题和改造方法,在此之前我只想说——Django Allauth 是屑。 为什么我说 Django Allauth 是屑 入职之初我就接到了一些第三方登录的任务,然而
http://172.16.7.203/sfAppServices/SF_UserLogin.svc/rest/login/ 在这个用户名和密码是它的一部分,我需要发布用户从edittext输入的用户名和密码,并得到如下json响应 如何使用改装获得json。我已使用asynctask成功完成此操作。但感觉很难通过改造来实现。我的问题是 哪个是基本网址? 在应该在post方法中公开的接口中。 如何
目前,我在改装方面面临一些问题。对于第二个请求,我提供给ReformInstance的URL正在更改。以下是代码: 以下是针对不同API请求的接口方法: UrlEndPoints.kt 对于第一个请求(loginUserByFacebook),我通过调试响应获得的URL是: http://test.sample.com/req/v1/user/auth/facebook 这很好,工作也很好。但是对