public interface IMyModel {
void doGet(String url, MyCallBack myCallBack);
void doPost(String url, FormBody formBody, MyCallBack myCallBack);
}
public class MyHomeModel implements IMyModel{
@Override
public void doGet(String url, MyCallBack myCallBack) {
OkHttpUtil.getInstance().getString(url,myCallBack);
}
@Override
public void doPost(String url, FormBody formBody,MyCallBack myCallBack) {
OkHttpUtil.getInstance().postString(url,formBody,myCallBack);
}
}
一、get请求
public void getString(String url, MyCallBack myCallBack) {
OkHttpClient okHttpClient = new OkHttpClient.Builder().build();
//设置请求
Request request = new Request.Builder()
.url(url)
.get()
.build();
//设置响应
okHttpClient.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
String body = response.body().string();
Log.e("---body","onResponse"+body);
handler.post(new Runnable() {
@Override
public void run() {
myCallBack.ok(body);
}
});
}
});
}
public void getClick(View view) {
OkHttpUtil.getInstance().getString("http://43.143.146.165:7777/foods/getFoods?currentPage=1&pageSize=12", new MyCallBack() {
@Override
public void ok(String json) {
Toast.makeText(MainActivity.this, ""+json, Toast.LENGTH_SHORT).show();
}
});
}
二、post请求
public void postString(String url,FormBody formBody,MyCallBack myCallBack){
OkHttpClient okHttpClient = new OkHttpClient.Builder().build();
//创建请求
Request builder = new Request.Builder()
.url(url)
.post(formBody)
.build();
//设置响应
okHttpClient.newCall(builder).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
String body = response.body().string();
Log.e("---post","onResponse"+body);
handler.post(new Runnable() {
@Override
public void run() {
myCallBack.ok(body);
}
});
}
});
}
public void postClick(View view) {
FormBody formBody = new FormBody.Builder()
.add("pageSize","10")
.add("currentPage","1")
.build();
OkHttpUtil.getInstance().postString("http://43.143.146.165:7777/foods/postFoods", formBody, new MyCallBack() {
@Override
public void ok(String json) {
Toast.makeText(MainActivity.this, ""+json, Toast.LENGTH_SHORT).show();
}
});
}