From 9c1f40f9ad91057fcd00ec4fe08d5ae47ed13c01 Mon Sep 17 00:00:00 2001 From: lixiaopeng Date: Wed, 27 Jan 2021 15:47:00 +0800 Subject: [PATCH 1/2] opt --- .../main/java/com/mogo/cloud/tanlu/CosUpload.java | 6 +----- .../com/mogo/cloud/tanlu/MogoRoadSearchManager.java | 4 ++-- .../java/com/mogo/cloud/tanlu/UploadManager.java | 12 +++++------- .../com/mogo/cloud/tanlu/constant/HttpConstant.java | 5 +++++ .../main/java/com/mogo/cloud/tanlu/utils/FileUtil.kt | 2 +- 5 files changed, 14 insertions(+), 15 deletions(-) diff --git a/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/CosUpload.java b/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/CosUpload.java index de98653..2bbec9f 100644 --- a/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/CosUpload.java +++ b/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/CosUpload.java @@ -65,7 +65,6 @@ public class CosUpload implements CosStatusCallback { public void uploadInfo(UploadInfo info, ITanluUploadCallback callback) { mCallback = callback; mUploadInfo = info; - Log.d(HttpConstant.TANLU, "videoPath = " + info.getFilePath()); if (!TextUtils.isEmpty(info.getFilePath())) { //不传路径 if (isVideo(info.getFilePath())) { @@ -100,10 +99,8 @@ public class CosUpload implements CosStatusCallback { Log.d(HttpConstant.TANLU, "uploadCosCompleted ----> downloadUrl =" + downloadUrl + "--localPath =" + localPath); if (filePath.size() == 2) { if (isVideo(localPath)) { //如果是视频 localPath - Log.e(HttpConstant.TANLU, "1111111-------"); mCosVideoUrl = downloadUrl; } else { - Log.e(HttpConstant.TANLU, "22222222------"); mCosPicUrl = downloadUrl; } @@ -112,7 +109,6 @@ public class CosUpload implements CosStatusCallback { sendInformation(); } } else { - Log.e(HttpConstant.TANLU, "333333------"); mCosPicUrl = downloadUrl; sendInformation(); } @@ -137,7 +133,7 @@ public class CosUpload implements CosStatusCallback { //删除本地生成的图片封面 if (videoCoverImage != null) { - boolean isDeleteSuccess = deletePicFile(videoCoverImage); + deletePicFile(videoCoverImage); } UploadManager.getInstance(mContext.getApplicationContext()).loadUpload(getInformation(), new ITanluUploadCallback() { diff --git a/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/MogoRoadSearchManager.java b/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/MogoRoadSearchManager.java index 9cb99d9..11d25e2 100644 --- a/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/MogoRoadSearchManager.java +++ b/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/MogoRoadSearchManager.java @@ -47,8 +47,8 @@ public class MogoRoadSearchManager { return sInstance; } - public void init () { //TODO - apiService = RetrofitFactory.INSTANCE.getInstance("http://dzt-test.zhidaozhixing.com") + public void init () { + apiService = RetrofitFactory.INSTANCE.getInstance(HttpConstant.DEV_HOTS) .create(TanluApiService.class); } diff --git a/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/UploadManager.java b/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/UploadManager.java index ff45a56..9efc316 100644 --- a/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/UploadManager.java +++ b/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/UploadManager.java @@ -45,8 +45,8 @@ public class UploadManager { return sInstance; } - public void init () { //TODO - apiService = RetrofitFactory.INSTANCE.getInstance("http://dzt-test.zhidaozhixing.com") + public void init () { + apiService = RetrofitFactory.INSTANCE.getInstance(HttpConstant.DEV_HOTS) .create(TanluApiService.class); } @@ -60,11 +60,10 @@ public class UploadManager { public void loadUpload(InformationBody informationBody, ITanluUploadCallback callback) { Gson gson = new Gson(); Map map = new HashMap<>(); -// map.put("sn", MoGoAiCloudClient.getInstance().getAiCloudClientConfig().getSn()); //TODO - map.put("sn", "F803EB2046PZD00228"); + map.put("sn", MoGoAiCloudClient.getInstance().getAiCloudClientConfig().getSn()); map.put("data", gson.toJson(informationBody)); Log.d(HttpConstant.TANLU, "info = " + gson.toJson(informationBody)); -// map.put("sn", "ZD802C1938L10797"); +// map.put("sn", "F803EB2046PZD00228"); // map.put("data", "{\"addr\":\"北京市东城区小黄庄北街2号靠近中国银行(北京安贞桥支行)\",\"areaCode\":\"110101\",\"areaName\":\"东城区\",\"cityCode\":\"010\",\"cityName\":\"北京市\",\"data\":\"[{\\\"thumbnail\\\":\\\"http://petchfile-1255510688.cos.ap-beijing.myqcloud.com/CarPad/com.zhidao.roadcondition/F803EB2046PZD00228/F803EB2046PZD00228_20210121165329/Thumbnail1611219200669.jpg\\\",\\\"url\\\":\\\"http://petchfile-1255510688.cos.ap-beijing.myqcloud.com/CarPad/com.zhidao.roadcondition/F803EB2046PZD00228/F803EB2046PZD00228_20210121165329/compress_video_20210121165307.mp4\\\"}]\",\"direction\":0.0,\"fromType\":\"2\",\"generateTime\":1611219213616,\"infoTimeout\":240,\"infoType\":1,\"isShare\":false,\"lat\":39.968317,\"lon\":116.410892,\"mainInfoId\":0,\"poiType\":\"10008\",\"provinceName\":\"北京市\",\"sn\":\"F803EB2046PZD00228\",\"speed\":0.0,\"street\":\"小黄庄北街\",\"trafficInfoType\":\"\",\"type\":1,\"uid\":0}"); Log.d(HttpConstant.TANLU, "sn = " + MoGoAiCloudClient.getInstance().getAiCloudClientConfig().getSn()); @@ -74,11 +73,11 @@ public class UploadManager { .subscribe(new Observer>() { @Override public void onSubscribe(Disposable d) { - Log.d(HttpConstant.TANLU, "onSubscribe -----> "); } @Override public void onNext(BaseData result) { + Log.d(HttpConstant.TANLU, "onNext -----> "); callback.onSuccess(result); } @@ -90,7 +89,6 @@ public class UploadManager { @Override public void onComplete() { - Log.d(HttpConstant.TANLU, "onComplete -----> "); } }); } diff --git a/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/constant/HttpConstant.java b/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/constant/HttpConstant.java index 0b00aab..d31a821 100644 --- a/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/constant/HttpConstant.java +++ b/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/constant/HttpConstant.java @@ -10,6 +10,11 @@ public class HttpConstant { public static final String DZT_HOTS = "http://dzt-deva.zhidaozhixing.com"; public static final String LAUNCHER_HOTS = "http://dzt-launcherSnapshot.zhidaozhixing.com"; + public static final String DEV_HOTS = "http://dzt-test.zhidaozhixing.com"; + public static final String RELEASE_HOTS = "http://dzt.zhidaozhixing.com"; + public static final String TANLU = "TANLU_MODULE"; + + } diff --git a/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/utils/FileUtil.kt b/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/utils/FileUtil.kt index 2acdaa7..bf862cb 100644 --- a/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/utils/FileUtil.kt +++ b/modules/mogo-tanlu/src/main/java/com/mogo/cloud/tanlu/utils/FileUtil.kt @@ -100,7 +100,7 @@ fun bitmapToFile(bitmap: Bitmap?, filePath: String): Boolean { return true } -// + fun getVideoPicPath(): String { val moviesDir = Environment.getExternalStoragePublicDirectory( Environment.DIRECTORY_PICTURES From a356490cb680edba8fcdd24186ec79a2cfaf6c37 Mon Sep 17 00:00:00 2001 From: wujifei Date: Wed, 27 Jan 2021 16:29:27 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E8=AE=BE=E7=BD=AEDNS?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo/cloud/network/NetworkActivity.java | 14 ++- foudations/mogo-commons/build.gradle | 1 - .../com/mogo/cloud/commons/network/HttpDns.kt | 20 ----- .../cloud/commons/network/NetConstants.kt | 19 +++- .../cloud/commons/network/OkHttpFactory.kt | 16 ++-- .../network/interceptor/HttpDnsInterceptor.kt | 26 ++++++ ...nterceptor.kt => HttpHeaderInterceptor.kt} | 2 +- .../interceptor/HttpLoggingInterceptor.kt | 87 +++++++++++++++++++ .../mogo/cloud/commons/utils/NetworkUtils.kt | 48 ---------- 9 files changed, 147 insertions(+), 86 deletions(-) delete mode 100644 foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/HttpDns.kt create mode 100644 foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/interceptor/HttpDnsInterceptor.kt rename foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/interceptor/{HeaderNetworkInterceptor.kt => HttpHeaderInterceptor.kt} (92%) create mode 100644 foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/interceptor/HttpLoggingInterceptor.kt delete mode 100644 foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/utils/NetworkUtils.kt diff --git a/app/src/main/java/com/mogo/cloud/network/NetworkActivity.java b/app/src/main/java/com/mogo/cloud/network/NetworkActivity.java index 97e841d..fbd33e5 100644 --- a/app/src/main/java/com/mogo/cloud/network/NetworkActivity.java +++ b/app/src/main/java/com/mogo/cloud/network/NetworkActivity.java @@ -34,6 +34,9 @@ import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.disposables.Disposable; import io.reactivex.schedulers.Schedulers; +import static com.mogo.cloud.commons.network.NetConstants.GEOFENCE_HOST; +import static com.mogo.cloud.commons.network.NetConstants.REALTIME_LOCATION_HOST; + /** * created by wujifei on 2021/1/21 12:26 * describe: @@ -51,18 +54,17 @@ public class NetworkActivity extends AppCompatActivity { setContentView(R.layout.activity_network); btn = (Button) findViewById(R.id.btn); tvResult = (TextView) findViewById(R.id.tv_result); - apiService = RetrofitFactory.INSTANCE.getInstance("http://dzt-test.zhidaozhixing.com") - .create(ApiService.class); + btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { tvResult.setText("结果显示"); queryRoadData("ZD802C1938L10797"); -// queryHelpSignal("ZD802C1938L10797"); +// queryHelpSignal("F803EB2046PZD00006"); //上报路况到服务端 - // uploadRoadInfo(); + // uploadRoadInfo(); //查询路况 // queryRoad(); } @@ -154,6 +156,8 @@ public class NetworkActivity extends AppCompatActivity { } public void queryRoadData(String sn) { + apiService = RetrofitFactory.INSTANCE.getInstance(GEOFENCE_HOST) + .create(ApiService.class); if (apiService != null) { Map map = new HashMap<>(); map.put("sn", sn); @@ -187,6 +191,8 @@ public class NetworkActivity extends AppCompatActivity { } public void queryHelpSignal(String sn) { + apiService = RetrofitFactory.INSTANCE.getInstance("http://dzt-realtimeLocation.zhidaozhixing.com") + .create(ApiService.class); if (apiService != null) { Map map = new HashMap<>(); map.put("sn", sn); diff --git a/foudations/mogo-commons/build.gradle b/foudations/mogo-commons/build.gradle index 2c8f9e8..2076b8c 100644 --- a/foudations/mogo-commons/build.gradle +++ b/foudations/mogo-commons/build.gradle @@ -53,7 +53,6 @@ dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" implementation rootProject.ext.dependencies.androidxccorektx implementation rootProject.ext.dependencies.androidxappcompat - implementation rootProject.ext.dependencies.okhttpinterceptor implementation rootProject.ext.dependencies.retrofit implementation rootProject.ext.dependencies.retrofitadapter implementation rootProject.ext.dependencies.retrofitconvertergson diff --git a/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/HttpDns.kt b/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/HttpDns.kt deleted file mode 100644 index e0635bf..0000000 --- a/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/HttpDns.kt +++ /dev/null @@ -1,20 +0,0 @@ -package com.mogo.cloud.commons.network - -import android.text.TextUtils -import com.mogo.cloud.commons.utils.getInetAddressByHost -import okhttp3.Dns -import java.net.InetAddress - -/** - * created by wujifei on 2021/1/26 12:51 - * describe: - */ -class HttpDns : Dns { - override fun lookup(hostname: String): List { - val addresses: List = getInetAddressByHost(hostname) - if (!addresses.isEmpty()) { - return addresses - } - return Dns.SYSTEM.lookup(hostname) - } -} \ No newline at end of file diff --git a/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/NetConstants.kt b/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/NetConstants.kt index ad9c349..b9ca2ea 100644 --- a/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/NetConstants.kt +++ b/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/NetConstants.kt @@ -6,13 +6,26 @@ package com.mogo.cloud.commons.network */ class NetConstants { companion object { + const val TAG = "LogInterceptor" const val READ_TIMEOUT = 20000L const val WRITE_TIMEOUT = 20000L const val CONNECT_TIMEOUT = 15000L - const val HTTP_DNS_ADDRESS_TYPE_HTTP = 0 - const val HTTP_DNS_ADDRESS_TYPE_WS = 1 - const val HTTP_DNS_ADDRESS_TYPE_IM = 2 + const val DEVA_HOST = "http://dzt-deva.zhidaozhixing.com" + const val IM_HOST = "http://dzt-im.zhidaozhixing.com" + const val LAUNCHER_SNAPSHOT_HOST = "http://dzt-launcherSnapshot.zhidaozhixing.com" + const val CHANNEL_MANAGER_HOST = "http://dzt-channelManager.zhidaozhixing.com" + const val DATA_SERVICE_HOST = "http://dzt-dataService.zhidaozhixing.com" + const val REALTIME_LOCATION_HOST = "http://dzt-realtimeLocation.zhidaozhixing.com" + const val INSTANT_HOST = "http://dzt-Instant.zhidaozhixing.com" + const val GEOFENCE_HOST = "http://dzt-geoFenceCarService.zhidaozhixing.com" + const val CARLIFE_HOST = "http://dzt-carlife.zhidaozhixing.com" + const val STRATEGY_PUSH_HOST = "http://dzt-strategyPush.zhidaozhixing.com" + const val TRAVEL_CONDITION_HOST = "http://dzt-travelCondition.zhidaozhixing.com" + const val TMC_HOST = "http://dzt-tmcServer.zhidaozhixing.com" + + const val IM_SOCKET_DOMAIN = "dzt-im.zhidaozhixing.com" + const val WEBSOCKET_DOMAIN = "dzt-Instant.zhidaozhixing.com" } } \ No newline at end of file diff --git a/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/OkHttpFactory.kt b/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/OkHttpFactory.kt index 9d32b11..c43720c 100644 --- a/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/OkHttpFactory.kt +++ b/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/OkHttpFactory.kt @@ -5,12 +5,10 @@ import com.mogo.cloud.commons.network.NetConstants.Companion.READ_TIMEOUT import com.mogo.cloud.commons.network.NetConstants.Companion.WRITE_TIMEOUT import com.mogo.cloud.commons.network.SSLSocketFactoryUtils.createSSLSocketFactory import com.mogo.cloud.commons.network.SSLSocketFactoryUtils.createTrustAllManager -import com.mogo.cloud.commons.network.interceptor.HeaderNetworkInterceptor -import com.mogo.cloud.commons.utils.lookup -import okhttp3.Dns +import com.mogo.cloud.commons.network.interceptor.HttpHeaderInterceptor +import com.mogo.cloud.commons.network.interceptor.HttpDnsInterceptor +import com.mogo.cloud.commons.network.interceptor.HttpLoggingInterceptor import okhttp3.OkHttpClient -import okhttp3.logging.HttpLoggingInterceptor -import java.net.InetAddress import java.util.concurrent.TimeUnit @@ -22,16 +20,16 @@ import java.util.concurrent.TimeUnit */ class OkHttpFactory private constructor() { companion object { - val okHttpClient: OkHttpClient by lazy(mode = LazyThreadSafetyMode.SYNCHRONIZED) { + val okHttpClient: OkHttpClient by lazy { OkHttpClient.Builder() - .addInterceptor(HttpLoggingInterceptor().setLevel(HttpLoggingInterceptor.Level.BODY)) - .addNetworkInterceptor(HeaderNetworkInterceptor()) + .addNetworkInterceptor(HttpHeaderInterceptor()) + .addInterceptor(HttpDnsInterceptor()) + .addInterceptor(HttpLoggingInterceptor()) .sslSocketFactory(createSSLSocketFactory(), createTrustAllManager()) .hostnameVerifier(SSLSocketFactoryUtils.TrustAllHostnameVerifier()) .connectTimeout(CONNECT_TIMEOUT, TimeUnit.MILLISECONDS) .readTimeout(READ_TIMEOUT, TimeUnit.MILLISECONDS) .writeTimeout(WRITE_TIMEOUT, TimeUnit.MILLISECONDS) - .dns(HttpDns()) .build() } diff --git a/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/interceptor/HttpDnsInterceptor.kt b/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/interceptor/HttpDnsInterceptor.kt new file mode 100644 index 0000000..a8e6653 --- /dev/null +++ b/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/interceptor/HttpDnsInterceptor.kt @@ -0,0 +1,26 @@ +package com.mogo.cloud.commons.network.interceptor + +import com.mogo.cloud.httpdns.MogoHttpDnsClient +import com.mogo.utils.logger.Logger +import okhttp3.Interceptor +import okhttp3.Request +import okhttp3.Response + +/** + * created by wujifei on 2021/1/27 15:57 + * describe: + */ +class HttpDnsInterceptor : Interceptor { + override fun intercept(chain: Interceptor.Chain): Response { + val request: Request = chain.request() + val path: String = request.url().encodedPath() + val query: String? = request.url().encodedQuery() + val host = "http://" + MogoHttpDnsClient.getHttpDnsAddressUseCacheIfNecessary(0, request.url().host().replace("http://", "").replace("https://", "")) + var url = host + path + query?.let { + url=url+"?"+query + } + Logger.d("DomainExchange", """oriHost: ${request.url().host().toString()} newHost: $host newUrl: $url""") + return chain.proceed(request.newBuilder().url(url).build()) + } +} \ No newline at end of file diff --git a/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/interceptor/HeaderNetworkInterceptor.kt b/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/interceptor/HttpHeaderInterceptor.kt similarity index 92% rename from foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/interceptor/HeaderNetworkInterceptor.kt rename to foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/interceptor/HttpHeaderInterceptor.kt index 1c92313..966b967 100644 --- a/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/interceptor/HeaderNetworkInterceptor.kt +++ b/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/interceptor/HttpHeaderInterceptor.kt @@ -8,7 +8,7 @@ import okhttp3.Response * created by wujifei on 2021/1/20 15:18 * describe:header携带信息 */ -class HeaderNetworkInterceptor : Interceptor { +class HttpHeaderInterceptor : Interceptor { override fun intercept(chain: Interceptor.Chain): Response { val original = chain.request() val request = original.newBuilder() diff --git a/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/interceptor/HttpLoggingInterceptor.kt b/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/interceptor/HttpLoggingInterceptor.kt new file mode 100644 index 0000000..830011b --- /dev/null +++ b/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/network/interceptor/HttpLoggingInterceptor.kt @@ -0,0 +1,87 @@ +package com.mogo.cloud.commons.network.interceptor + +import com.mogo.cloud.commons.network.NetConstants.Companion.TAG +import com.mogo.utils.logger.Logger +import okhttp3.* +import okio.Buffer +import java.io.IOException +import java.nio.charset.Charset +import java.util.concurrent.TimeUnit + +/** + * created by wujifei on 2021/1/27 14:33 + * describe: + */ +class HttpLoggingInterceptor : Interceptor { + override fun intercept(chain: Interceptor.Chain): Response { + val request = chain.request() + val requestBody = request.body() + val hasRequestBody = requestBody != null + var protocol = Protocol.HTTP_1_1.toString() + var body = "" + if (chain.connection() != null && chain.connection()!!.protocol() != null) { + protocol = chain.connection()!!.protocol().toString() + } + + if (hasRequestBody) { + try { + val UTF8 = Charset.forName("UTF-8") + val buffer = Buffer() + requestBody?.writeTo(buffer) + var charset = UTF8 + val contentType = requestBody?.contentType() + if (contentType != null) { + charset = contentType.charset(UTF8) + } + if (charset != null) { + body = buffer.readString(charset) + } + } catch (e: IOException) { + e.printStackTrace() + } + } + + val logMsg = StringBuilder() + .append("------> http request start").append("\r\n") + .append(protocol).append(", ") + .append(request.method()).append(", ") + .append("Request Headers: ").append(request.headers().toString()).append("\r\n") + .append("Url: ").append(request.url()).append("\r\n") + .append("Content-Type: ").append(requestBody?.contentType()).append("\r\n") + .append("Content-Length: ").append(requestBody?.contentLength()).append("\r\n") + .append("Content-body: ").append(body).append("\r\n") + .append("------> http request end").append("\r\n").append("\r\n") + + + val startTime = System.nanoTime() + val response = chain.proceed(chain.request()) + val endTime = TimeUnit.NANOSECONDS.toMillis(System.nanoTime() - startTime) + + val responseBody = response.body() + var responseContent: String? = null + var bodySize: String? = null + var contentType: MediaType? = null + var consumedResponse = false + + if (responseBody != null) { + val contentLength = responseBody.contentLength() + bodySize = if (contentLength != -1L) "$contentLength-byte" else "unknown-length" + contentType = responseBody.contentType() + responseContent = responseBody.string() + consumedResponse = true + } + + logMsg.append("------> http response start").append("\r\n") + .append(response.code()).append(" ") + .append(response.message()).append(" ") + .append(response.protocol()).append(" ").append("\r\n") + .append("Response Content: ").append(responseContent).append("\r\n") + .append("Content-Type: ").append(contentType).append("\r\n") + .append("Content-Length: ").append(bodySize).append("\r\n") + .append(" (").append(endTime).append("ms)").append("\r\n") + .append("------> http response end") + Logger.d(TAG, logMsg.toString()) + return if (consumedResponse) response.newBuilder().body(ResponseBody.create(contentType, responseContent)).build() else response + + } +} \ No newline at end of file diff --git a/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/utils/NetworkUtils.kt b/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/utils/NetworkUtils.kt deleted file mode 100644 index d98a46c..0000000 --- a/foudations/mogo-commons/src/main/java/com/mogo/cloud/commons/utils/NetworkUtils.kt +++ /dev/null @@ -1,48 +0,0 @@ -package com.mogo.cloud.commons.utils - -import android.text.TextUtils -import com.mogo.cloud.commons.network.NetConstants.Companion.HTTP_DNS_ADDRESS_TYPE_HTTP -import com.mogo.cloud.httpdns.MogoHttpDnsClient -import java.net.InetAddress -import java.net.UnknownHostException -import java.util.* - -/** - * created by wujifei on 2021/1/20 12:51 - * describe:网络工具 - */ - -/** - * 根据host获取InetAddress - */ -@Throws(UnknownHostException::class) -fun lookup(hostname: String?): List? { - val cacheIp: String? = hostname?.let { MogoHttpDnsClient.getHttpDnsAddressUseCacheIfNecessary(HTTP_DNS_ADDRESS_TYPE_HTTP, it) } - if (cacheIp == null || TextUtils.isEmpty(cacheIp)) { - return emptyList() - } - val info = cacheIp.split(":").toTypedArray() - return if (info.size > 1) { - Arrays.asList(*InetAddress.getAllByName(info[0])) - } else { - Arrays.asList(*InetAddress.getAllByName(cacheIp)) - } -} - - -/** - * 根据host获取InetAddress - */ -@Throws(UnknownHostException::class) -fun getInetAddressByHost(hostname: String): List { - val cacheIp: String? = hostname?.let { MogoHttpDnsClient.getHttpDnsAddressUseCacheIfNecessary(HTTP_DNS_ADDRESS_TYPE_HTTP, it) } - if (cacheIp == null || TextUtils.isEmpty(cacheIp)) { - return emptyList() - } - val info = cacheIp.split(":").toTypedArray() - return if (info.size > 1) { - Arrays.asList(*InetAddress.getAllByName(info[0])) - } else { - Arrays.asList(*InetAddress.getAllByName(cacheIp)) - } -} \ No newline at end of file