taxiapp/app/src/main/java/cn/trans88/taxiappkotlin/util/OkHttpTool.java

88 lines
2.3 KiB
Java
Raw Normal View History

package cn.trans88.taxiappkotlin.util;
import android.util.Log;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.List;
import java.util.concurrent.TimeUnit;
import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.SSLSession;
import okhttp3.Callback;
import okhttp3.Dns;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
public class OkHttpTool {
private OkHttpClient client;
private volatile static OkHttpTool instance;
public static OkHttpTool getInstance() {
if (instance == null) {
synchronized (OkHttpTool.class) {
if (instance == null) {
instance = new OkHttpTool();
}
}
}
return instance;
}
private OkHttpTool() {
client = new OkHttpClient.Builder()
.connectTimeout(80, TimeUnit.SECONDS)
.readTimeout(80, TimeUnit.SECONDS)
.writeTimeout(80, TimeUnit.SECONDS)
.build();;
}
/**
* 发送异步请求
* @param url
* @param callback
*/
public void sendRequest(String url, Callback callback){
Request request = new Request.Builder().url(url).build();
client.newCall(request).enqueue(callback);
}
/**
* 发送同步请求
* @param url
* @return
* @throws IOException
*/
public Response sendSyncRequest(String url) throws IOException {
Request request = new Request.Builder().url(url).build();
return client.newCall(request).execute();
}
public String getVistor(String url, String token) {
Log.i("TAG", "token:" + token);
// Headers headers = new Headers.Builder().add("token",token).build();
Request request = new Request.Builder().get().url(url + "?dataKey=" + token).build();
try {
Response response = client.newCall(request).execute();
if (response.isSuccessful() && response.code() == 200) {
return response.body().string();
}
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}