1.配置 build.gradler
compile 'com.squareup.okhttp:okhttp:2.4.0'
compile 'com.squareup.okio:okio:1.5.0'
2.get请求数据的事例
private void getDate() {
//子线程中请求数据
new Thread() {
@Override
public void run() {
//创建okHttpClient对象
OkHttpClient mOkHttpClient = new OkHttpClient();
//创建一个Request
final Request request = new Request.Builder()
.url(path)
.build();
//new call
Call call = mOkHttpClient.newCall(request);
//请求加入调度
call.enqueue(new Callback() {
@Override
public void onFailure(Request request, IOException e) {
}
@Override
public void onResponse(final Response response) throws IOException {
//此处请求成功的数据必须发送到Handler中进行调用(Toast也不行)
String htmlStr = response.body().string();
Message msg=new Message();
msg.obj=htmlStr;
handler.sendMessage(msg);
}
});
}
}.start();
}
Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
String str= (String) msg.obj;
Toast.makeText(MainActivity.this, str, Toast.LENGTH_SHORT).show();
}
};3.post请求的事例------与get请求相比,仅仅是Request的参数不同
Request request = buildMultipartFormRequest(
url, new File[]{file}, new String[]{fileKey}, null);
FormEncodingBuilder builder = new FormEncodingBuilder();
builder.add("name","孙梦龙");
Request request = new Request.Builder()
.url(url)
.post(builder.build())
.build();
mOkHttpClient.newCall(request).enqueue(new Callback(){});
是不是挺简单的,,,,哈哈,,,,继续努力吧!