废话少说,直接上代码
GET请求
import okhttp3.*;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
public JSONObject getHttp(String url) throws IOException {
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url(url)
.get()//这个可以不加,默认是get请求
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
if(response.isSuccessful()){
String a = response.body().string();
logger.info("调用接口成功");
return JSONObject.parseObject(a);
}else {
logger.error(response.toString());
return null;
}
}
POST请求
public JSONObject http(AddOperationLogDto addOperationLogDto, String url, String sessionId) throws IOException {
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = FormBody.create(mediaType, JSON.toJSONString(addOperationLogDto));
Request request = new Request.Builder()
.url(url)
.post(body)
.addHeader("content-type", "application/json")
.addHeader("Cookie","SESSION="+sessionId)
.build();
Response response = client.newCall(request).execute();
if(response.isSuccessful()){
String a = response.body().string();
logger.info("调用日志接口成功");
return JSONObject.parseObject(a);
}else {
logger.error("调用日志接口失败"+response.toString());
return null;
}
}
正常情况下都会有验签规则,放在header里面,各位看官根据实际情况调整哈
这里展示的主要还是get和post如何传参,以及获取返回数据