JAVA中如何设置代理服务器,取消代理服务器

本文介绍了在Java中如何设置和取消代理服务器,强调了代理服务器作为安全功能的角色,特别是在会话层提供防火墙保护。文章内容包括简介、使用方法和总结,旨在帮助开发者理解和实现相关操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、简介

代理服务器(Proxy Server)是一种重要的服务器安全功能,它的工作主要在开放系统互联(OSI)模型的会话层,从而起到防火墙的作用。代理服务器大多被用来连接INTERNET(国际互联网)和INTRANET(局域网)。主要功能:就是代理网络用户去取得网络信息。形象的说,它是网络信息的中转站。本文主要介绍如何使用java代码设置代理服务器。

主服务器为了防止被伪用户攻击,统一让用户通过代理服务器去访问主服务器,这样做的安全性是显而易见的。一个图理解代理服务器及作用


2、使用

在JAVA中怎么设置代理服务器呢,非常简单
public void setServiceProxy(Config config) {
		this.config = config;
		System.setProperty("http.proxyHost", config.getProxyHost());
		System.setProperty("http.proxyPort", config.getProxyPort());
		System.setProperty("https.proxyHost", config.getProxyHost());
		System.setProperty("https.proxyPort", config.getProxyPort());
	}
然后在每一个HttpUrlConnection请求中,设置代理服务器用户名和密码,并进行Base64加密(看你代理服务器的要求,可能因代理服务器不同而不同),代码如下
private HttpURLConnection getProxyHttpConnection() throws IOException {
		String authorization = config.getProxyUser() + ":"
				+ config.getProxyPassword();
		URL url = new URL(config.getRequestUrl());
		HttpURLConnection conn = (HttpURLConnection) url.openConnection();
		conn.setRequestProperty("Proxy-Authorization",
				"Basic " + Base64.encodeBase64String(authorization.getBytes()));
		return conn;
	}
Base64加密工具,Apache的common包里就有,如果找不到就从这里下载 http://commons.apache.org/proper/commons-codec/download_codec.cgi
如果你想取消代理服务器的设置,也非常简单,代码如下
public void removeServiceProxy() {
		System.getProperties().remove("http.proxyHost");
		System.getProperties().remove("http.proxyPort");
		System.getProperties().remove("https.proxyHost");
		System.getProperties().remove("https.proxyPort");
	}

3、总结

代理服务器是为了主服务器的安全性,稳定性而设计的,也是非常的常见,也是JAVA开发人员必须会的东西。如果你正在研究这个,赶紧试试吧!
转载标明出处,2014年6月 王端晴
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值