HttpClient
* 步骤:
1. 创建HttpClient对象
2. 创建HttpGet或者HttpPost对象。将地址传给构造方法。
3. 让HttpClient对象执行请求。得到响应对象HttpResponse
4. 从HttpResponse对象中得到响应码。
5. 判断响应码是否为200,如果200则获得HttpEntity.
6. 用EntityUtils将数据从HttpEntity中获得
//http://localhost:8080/MyServer/login?username=admin&userpwd=111
String path = "http://localhost:8080/MyServer/login";
//1:创建HttpClient
HttpClient client = new DefaultHttpClient();
//2:创建请求。
HttpPost post = new HttpPost(path);
//将数据封装到post对象里。
//创建一个存储封装键值对对象的集合
List<NameValuePair> params = new ArrayList<NameValuePair>();
//将数据封装到NameValuePair对象里,第一个参数为键,第二个参数为值
NameValuePair value1 = new BasicNameValuePair("username", "admin");
NameValuePair value2 = new BasicNameValuePair("userpwd", "1112");
//将对象添加到集合中。
params.add(value1);
params.add(value2);
//将数据集合封装成HttpEntity
HttpEntity entity = new UrlEncodedFormEntity(params);
//设置HttpEntity
post.setEntity(entity);
//让客户端执行请求。
HttpResponse response = client.execute(post);
int code = response.getStatusLine().getStatusCode();
if(code==200){
HttpEntity result_entity = response.getEntity();
String str = EntityUtils.toString(result_entity);
System.out.println(str);
}
//创建HttpClient对象--客户端
HttpClient client = new DefaultHttpClient();
//创建请求。---Get:HttpGet
String path = "http://a3.att.hudong.com/36/11/300001378293131694113168235_950.jpg";
HttpGet get = new HttpGet(path);
//让客户端执行请求。得到响应对象
try {
HttpResponse response = client.execute(get);
//得到响应码。:响应码和服务器端发送给客户端的数据都封装在HttpResponse里。
int code = response.getStatusLine().getStatusCode();
if(code==200){
//成功响应。
//得到服务器端的数据。
HttpEntity entity = response.getEntity();
byte[] b = EntityUtils.toByteArray(entity);
//将byte数组的数据写到文件中。
FileOutputStream fos = new FileOutputStream("f:\\a3.jpg");
fos.write(b);
fos.close();
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现