zoukankan      html  css  js  c++  java
  • HttpClient GET和POST请求

    package com.rogue.hclient;
    
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    
    import org.apache.commons.httpclient.HttpClient;
    import org.apache.commons.httpclient.HttpException;
    import org.apache.commons.httpclient.methods.GetMethod;
    import org.apache.commons.httpclient.methods.PostMethod;
    import org.apache.commons.httpclient.methods.RequestEntity;
    import org.apache.commons.httpclient.methods.StringRequestEntity;
    
    /**
     * 测试HttpClient功能
     * @author djoker
     *
     */
    public class HClientTest {
    
        HttpClient client = new HttpClient();
        
        //get功能测试
        public void getTest(){
            String uri = "http://172.16.100.20/cgi-bin/ht.cgi?method=getMethodTest";
            GetMethod method = new GetMethod(uri);
            try {
                int code = client.executeMethod(method);
                System.out.println(code);
                if(200 == code){
                    
    //                StringBuffer sb = new StringBuffer();
    //                sb.append(method.getResponseBodyAsString());    //不推荐使用,会有警告,如果读取的内容过多,会导致超过最大读取值
    //                System.out.println(sb.toString());
                    
                    InputStream is = method.getResponseBodyAsStream();
                    BufferedReader br = new BufferedReader(new InputStreamReader(is, "utf-8"));
                    String line = null;
                    while((line = br.readLine()) != null){
                        System.out.println(line);
                    }
                }
            } catch (HttpException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        
        //POST测试
        public void postTest(){
            String uri = "http://172.16.100.20/cgi-bin/ht.cgi";
            String content = "method=PostMethod&paramer=paramer";   //参数
            PostMethod method = new PostMethod(uri);
            RequestEntity requestEntity = new StringRequestEntity(content); //字符串请求参数
            method.setRequestEntity(requestEntity); //设置请求参数
            try {
                int code = client.executeMethod(method);
                System.out.println(code);
                if(200 == code){
                    InputStream is = method.getResponseBodyAsStream();
                    BufferedReader br = new BufferedReader(new InputStreamReader(is, "utf-8"));
                    String line = null;
                    while((line = br.readLine()) != null){
                        System.out.println(line);
                    }
                }
            } catch (HttpException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        
        public static void main(String[] args){
            HClientTest hct = new HClientTest();
            hct.getTest();
            System.out.println("--------");
            hct.postTest();
        }
    }
  • 相关阅读:
    Pydev Console中文提示乱码的问题
    pg_dump命令帮助信息
    Aptana下Django1.6以后的项目模板结构改造
    老外的项目开发在线服务网站资源
    淘宝技术交流笔记
    Python并发编程的几篇文章
    gevent程序员指南
    IOS UITableView拖动排序功能
    Codeforces 300A Array
    一次mysql优化经历
  • 原文地址:https://www.cnblogs.com/djoker/p/6915514.html
Copyright © 2011-2022 走看看