Java okhttp3 使用(持续更新)
程序员文章站
2024-02-19 12:19:10
...
关于技术文档官网介绍得比较清楚了,我就不累赘了,下面给出我自己的一个使用案例。
**需求:**Java 代码内部访问其他服务器(带http、https),需要其他服务器实现某功能,然后返回数据给Java当前项目。
**分析:**首先需要明白访问的数据格式,其次是如何连接上目标服务器,然后如何接收数据,我的需求是发送一段文本给目标服务器,目标服务器返回处理结果。
环境:Java 1.8、OKHTTP3、spring boot
pom.xml依赖
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>3.2.0</version>
</dependency>
具体代码:
import okhttp3.FormBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
//实例函数
/**
* 直接post键值 "name" : "value"
*
* */
@Override
public String post(String url , String params) {
OkHttpClient client = new OkHttpClient();
String anString = "";
//组装键值,params为键值,name为属性名
RequestBody formBody = new FormBody.Builder()
.add("name", params)
.build();
//组装请求头
Request request = new Request.Builder()
.url(url)
.post(formBody)
.build();
//该方法容易触发IOException异常
try {
//获取返回值
Response response = client.newCall(request).execute();
if(response.isSuccessful()) {
anString += response.body().string();
}else {
anString+="error!";
}
}catch(IOException ie) {
ie.printStackTrace();
}
return anString;
}
上一篇: python 文件路径处理小知识
下一篇: Java文件拷贝(21式)持续更新...