zoukankan      html  css  js  c++  java
  • 依赖于Apache模拟Http请求

    一、依赖的jar包

    httpclient-4.5.jar
    httpclient-cache-4.5.jar
    httpcore-4.4.1.jar

    package com.lava.lavafaq.utils;
    
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.io.PrintWriter;
    import java.net.URL;
    import java.net.URLConnection;
    import java.util.ArrayList;
    import java.util.List;
    import java.util.Map;
    
    import org.apache.http.HttpEntity;
    import org.apache.http.NameValuePair;
    import org.apache.http.ParseException;
    import org.apache.http.client.ClientProtocolException;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.entity.UrlEncodedFormEntity;
    import org.apache.http.client.methods.CloseableHttpResponse;
    import org.apache.http.client.methods.HttpGet;
    import org.apache.http.client.methods.HttpPost;
    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.message.BasicNameValuePair;
    import org.apache.http.util.EntityUtils;
    
    /*
     * 依赖于Apache库
     */
    public class HttpRequest {  
        
        public static String get(String url)
        { 
            String result="";
            CloseableHttpClient client = HttpClients.createDefault();
            try
            {
                 HttpGet httpGet = new HttpGet(url);
                 CloseableHttpResponse resp = client.execute(httpGet);
                 try
                 {
                     HttpEntity entity = resp.getEntity();
                     if (null != entity)
                     {                    
                         result=EntityUtils.toString(entity);
                     }
                 }
                 catch(Exception e)
                 {
                     
                 }
                 finally
                 {
                     resp.close();
                 }
            }
            catch(Exception e)
            {
                
            }
            finally
            {
                try {
                    client.close();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
            return result;
        }
        
        
        public static String post(String url,List<NameValuePair> paramPairs)
        {
            String result="";
             // 1. 获取默认的client实例
            CloseableHttpClient client = HttpClients.createDefault();
            // 2. 创建httppost实例
            HttpPost httpPost = new HttpPost(url);
            // 3. 创建参数队列(键值对列表)
    //        List<NameValuePair> paramPairs = new ArrayList<NameValuePair>();
    //         paramPairs.add(new BasicNameValuePair("username", "admin"));
    //         paramPairs.add(new BasicNameValuePair("password", "123456"));
             UrlEncodedFormEntity entity;
             try
             {
                // 4. 将参数设置到entity对象中
                 entity = new UrlEncodedFormEntity(paramPairs, "UTF-8");
                 // 5. 将entity对象设置到httppost对象中
                 httpPost.setEntity(entity);
                 System.out.println("executing POST request " + httpPost.getURI());
                // 6. 发送请求并回去响应
                 CloseableHttpResponse resp = client.execute(httpPost);
                 try
                 {
                      HttpEntity respEntity = resp.getEntity();
                      if (null != respEntity) 
                      {
                          result=EntityUtils.toString(respEntity, "UTF-8");                      
                      }                 
                     
                 }
                 catch(Exception e)
                 {
    
                 }
                 finally
                 { 
                     // 9. 关闭响应对象
                     resp.close();
                 }
             }
             catch(Exception e)
             {
                 
             }
             finally
             {
                // 10. 关闭连接,释放资源
                 try {
                    client.close();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
             }
             return result;
        }
    }


  • 相关阅读:
    测试策略如何制定
    python atexit模块和register函数
    使用Redis实现异步消息队列
    python 处理中文 读取数据库输出全是问号
    TCP和UDP的区别和优缺点
    怎样ping网络
    ImportError: libpng12.so.0: cannot open shared object file: No such file or directory
    tensorrtx/retinaface/calibrator.cpp:4:31: 致命错误:opencv2/dnn/dnn.hpp:没有那个文件或目录
    编译tensorrtx/retinaface遇到报错/usr/local/cuda/include/vector_types.h(421): error: identifier "constexpr" is undefined
    RetinaFace.cpp:112:37: 错误:‘std::chrono’尚未声明
  • 原文地址:https://www.cnblogs.com/liandy0906/p/9027437.html
Copyright © 2011-2022 走看看