分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 网页技术

HttpClient--使用HttpClient进行Get Post请求访问

发布时间:2023-09-06 02:10责任编辑:彭小芳关键词:暂无标签

在java后台开发中,我们有时候需要调用其他网站的接口进行数据的获取操作,我们一般会采用

  1.java net 包中的URL 类,进行网络的数据获取

  2.使用apache提供的HttpClient进行网络中数据的获取;

这里我们使用第二种方式,使用apache 提供的HttpClient进行数据的获取,接口的对接,下面附上HttpClientUtil 工具类,实现了POST与GET方法

package com.project.util;import java.io.IOException;import org.apache.http.HttpEntity;import org.apache.http.HttpResponse;import org.apache.http.client.ClientProtocolException;import org.apache.http.client.methods.HttpGet;import org.apache.http.client.methods.HttpPost;import org.apache.http.entity.StringEntity;import org.apache.http.impl.client.CloseableHttpClient;import org.apache.http.impl.client.DefaultHttpClient;import org.apache.http.impl.client.HttpClients;import org.apache.http.util.EntityUtils;public class HttpClientUtil { ???????????????????//使用HttpClient 进行doGET请求 ???????public static String doGet(String url) { ???????????????????????????????????String result =null; ???????????//DefaultHttpClient httpclient =new DefaultHttpClient();//老版本的方法 ???????????CloseableHttpClient httpclient =HttpClients.createDefault(); ???????????HttpGet httpget =new HttpGet(url); ???????????try { ???????????????HttpResponse response=httpclient.execute(httpget); ???????????????HttpEntity entity=response.getEntity(); ???????????????if(entity !=null) { ????????????????????result =EntityUtils.toString(entity,"UTF-8"); ???????????????????????????????????????} ???????????????????????????????????????????} catch (Exception e) { ???????????????????????????????e.printStackTrace(); ???????????} ????????????finally { ???????????????????????????????try { ???????????????????????????????????if(httpclient !=null) { ???????????????????????????????????????????httpclient.close(); ???????????????????} ???????????????} catch (IOException e) { ???????????????????????// TODO Auto-generated catch block ???????????????????????e.printStackTrace(); ???????????????????} ???????????????} ???????????return result; ???????????????????????????????????????} ???????????????????????????????public static void main(String[] args) { ???????????????????????String str=doGet("http://www.baidu.com"); ???????????System.out.println(str); ???????????????????????????????} ???????????????????????????????????????????????//使用HttpClient 进行dopOSTT请求,适合发送的数据为json数据格式 ???????????public static String doPOST(String url,String outstr) { ???????????????????????????????????????????????//DefaultHttpClient httpclient =new DefaultHttpClient();//老版本的方法 ???????????????CloseableHttpClient httpclient =HttpClients.createDefault(); ???????????????HttpPost httppost =new HttpPost(url); ???????????????String result =null; ???????????????try { ???????????????????httppost.setEntity(new StringEntity(outstr, "UTF-8")); ???????????????????HttpResponse response=httpclient.execute(httppost); ???????????????????HttpEntity entity=response.getEntity(); ???????????????????if(entity !=null) { ????????????????????????result =EntityUtils.toString(entity,"UTF-8"); ???????????????????????????????????????????} ???????????????????????????????????} catch (Exception e) { ???????????????????// TODO Auto-generated catch block ???????????????????e.printStackTrace(); ???????????????} ????????????????finally { ???????????????????????????????????????try { ???????????????????????????????????????????if(httpclient !=null) { ???????????????????????????????????????????????????httpclient.close(); ???????????????????????} ???????????????????} catch (IOException e) { ???????????????????????????// TODO Auto-generated catch block ???????????????????????????e.printStackTrace(); ???????????????????????} ???????????????????} ???????????????return result; ???????????} ???????????????????}

 

HttpClient--使用HttpClient进行Get Post请求访问

原文地址:https://www.cnblogs.com/iscys/p/9502601.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved