http using a proxy

HttpUrlConnection use a proxy:

private static HttpURLConnection getConnection(URL url, String method, String ctype)
            throws IOException {
        HttpURLConnection conn;
        if (hasProxy) {
            Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(proxyHost, proxyPort));
            conn = (HttpURLConnection)url.openConnection(proxy);
        } else {
            conn = (HttpURLConnection) url.openConnection();
        }
        conn.setDoInput(true);
        conn.setDoOutput(true);
        conn.setRequestMethod(method);
        conn.setRequestProperty("Content-Type", "application/json");
        conn.setRequestProperty("Connection", "Keep-Alive");
        return conn;
    }

httpClent:

RequestConfig requestConfig = null;
            if(StringUtil.isEmpty(proxyHost)){
                requestConfig = RequestConfig.custom()
                        .setSocketTimeout(connectTimeout)
                        .setConnectTimeout(connectTimeout)
                        .build();
            }else{    //代理
                HttpHost proxy = new HttpHost(proxyHost,proxyPort);
                requestConfig = RequestConfig.custom()
                        .setProxy(proxy)
                        .setSocketTimeout(connectTimeout)
                        .setConnectTimeout(connectTimeout)
                        .build();
            }

Common Code:

private static String proxyHost;
    private static int proxyPort;
    private static boolean hasProxy = false;

    public void setProxy(String proxyHost,int proxyPort) {
        this.proxyHost = proxyHost;
        this.proxyPort = proxyPort;
        hasProxy = true;
    }

 

Guess you like

Origin www.cnblogs.com/deityjian/p/11424302.html