java中網絡設置代理


三種方式: 1.JVM啟動時加參數設置代理 在系統啟動時,使用-D項來設置代理。 例如: java -Dhttp.ProxyHost="proxyUrl" -Dhttp.ProxyPort="proxyPort" "java項目" 代理的作用域:整個系統 2.代碼中設置系統參數 其中,代理類型有http、https、socks等,代理屬性有: proxyHost(代理的IP或域名); proxyPort(代理的端口號); proxyUser(用戶名); proxyPassword(密碼); nonProxyHosts(不使用代理的列表)。 代理屬性中的proxyUser(用戶名)、proxyPassword(密碼)、nonProxyHosts(不使用代理的列表)不是必須的 System.setProperty("http.proxyHost", "proxyUrl"); System.setProperty("http.proxyPort", "proxyPort"); System.setProperty("http.nonProxyHosts", "url1 | url2"); 代理的作用域:整個系統 3.代碼中對單個URL設置代理 public static String httpRequest(String requestUrl, String requestMethod, String outputStr) { StringBuffer buffer = null; try { URL url = new URL(requestUrl); SocketAddress sa = new InetSocketAddress("proxyUrl", proxyPort); Proxy proxy = new Proxy(Proxy.Type.HTTP, sa); HttpURLConnection conn = (HttpURLConnection) url.openConnection(proxy); conn.setRequestProperty("Authorization","***"); conn.setDoOutput(true); conn.setDoInput(true); conn.setRequestMethod(requestMethod); conn.connect(); if (null != outputStr) { OutputStream os = conn.getOutputStream(); os.write(outputStr.getBytes("utf-8")); os.close(); } InputStream is = conn.getInputStream(); InputStreamReader isr = new InputStreamReader(is, "utf-8"); BufferedReader br = new BufferedReader(isr); buffer = new StringBuffer(); String line = null; while ((line = br.readLine()) != null) { buffer.append(line); } } catch (Exception e) { e.printStackTrace(); } return buffer.toString(); } 代理的作用域:指定URL


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM