common-httpclient 用户名密码认证示例

import java.io.IOException;  

import java.util.ArrayList;  

import java.util.List;  

  

import org.apache.commons.httpclient.DefaultHttpMethodRetryHandler;  

import org.apache.commons.httpclient.Header;  

import org.apache.commons.httpclient.HttpClient;  

import org.apache.commons.httpclient.HttpException;  

import org.apache.commons.httpclient.HttpStatus;  

import org.apache.commons.httpclient.UsernamePasswordCredentials;  

import org.apache.commons.httpclient.auth.AuthScope;  

import org.apache.commons.httpclient.methods.GetMethod;  

import org.apache.commons.httpclient.params.HttpMethodParams;  

  

public class HttpClientUse {  

  

    public static void main(String[] args) throws HttpException, IOException {  

        HttpClient httpClient = new HttpClient();  

        //需要验证  

        UsernamePasswordCredentials creds = new UsernamePasswordCredentials("guest", "guest");  



        httpClient.getState().setCredentials(AuthScope.ANY, creds); 

        

  

        //设置http头  

        List <Header> headers = new ArrayList <Header>();  

        headers.add(new Header("User-Agent", "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)"));  

        httpClient.getHostConfiguration().getParams().setParameter("http.default-headers", headers);  

  

        GetMethod method = new GetMethod("http://localhost:15672/api/exchanges/%2F/amq.direct");

        method.setDoAuthentication(true);

        method.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,  

                new DefaultHttpMethodRetryHandler(3, false));  

        try {  

            int statusCode = httpClient.executeMethod(method);  

            if (statusCode != HttpStatus.SC_OK) {  

                System.out.println("Method failed code="+statusCode+": " + method.getStatusLine());  

  

            } else {  

                System.out.println(new String(method.getResponseBody(), "utf-8"));  

            }  

        } finally {  

            method.releaseConnection();  

        }  

    }  

}  

 注意:

测试使用commons-httpclient-3.0.1.jar 

你可能感兴趣的:(httpclient)