JAVA如何设置代理server,s取消代理erver
1、一个简短的引论
代理server(Proxy
Server)是一种重要的server安全功能,它的工作主要在开放系统互联(OSI)模型的会话层,从而起到防火墙的作用。
代理server大多被用来连接INTERNET(国际互联网)和INTRANET(局域网)。主要功能:就是代理网络用户去取得网络信息。形象的说,它是网络信息的中转站。本文主要介绍怎样使用java代码设置代理server。
主server为了防止被伪用户攻击,统一让用户通过代理server去訪问主server,这样做的安全性是显而易见的。一个图理解代理server及作用
2、使用
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请求中,设置代理serverusername和password。并进行Base64加密(看你代理server的要求,可能因代理server不同而不同)。代码例如以下
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如何设置代理server,s取消代理erver的更多相关文章
- git设置、查看、取消代理
设置代理: git config --global http.proxy 'socks5://127.0.0.1:1080' git config --global https.proxy 'sock ...
- 计算机网络--http代理server的设计与实现
一.Socket编程的client和服务端的主要步骤: Java Socket编程:对于http传输协议 client: 1.创建新的socket,绑定serverhost和port号 2.Socke ...
- npm 取消代理 npm config delete proxy
今天在安装electron时设置了代理,发现再npm install 安装别的总是装不上,只好取消代理. npm 取消代理 npm config delete proxy
- 代理server的概要知识
技术支持请留言:http://www.lcpower.cn 一.什么是代理server? 代理server英文全称是Proxy Server.其功能就是代理网络用户去取得网络信息.形象的说:它是网络信 ...
- linux杂谈(十三):代理server
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/linux_player_c/article/details/24707457 1.代理server的 ...
- 反向代理:是指以代理server来接收Internet上的请求,然后将请求转发到内部网络的server上,并将结果返回给Internet上连接的client,此时的代理server对外就表现为反向代理server。
Nginx安装好之后.開始使用它来简单实现反向代理与负载均衡的功能.在这之前.首先得脑补一下什么是反向代理和负载均衡. 反向代理:是指以代理server来接收Internet上的请求,然后将 ...
- Java通过代理server上网
完整代码 package com.proj.net; //导入编码的jar文件 import it.sauronsoftware.base64.Base64; import java.io.Buffe ...
- npm 设置和取消代理配置
设置代理npm config set proxy=http://127.0.0.1:8087npm config set registry=http://registry.npmjs.org12关于h ...
- 代理server的理解(1):Windows环境下的代理server设置
浏览器中的代理server设置 Windows系统接口提供的代理server设置是一个全局的代理server的设置,如图所看到的,这里就不多解释: 各个浏览器在使用代理设置的时候,能够主动地获代替理设 ...
随机推荐
- Launcher Activity在开机时重新启动两次解决的方法
今天在看log的时候发现,Launcher activity会被onDestroy掉一次.然后再重新启动. 可能原因推測: 1.横竖屏切换 2.MCC MNC等Configuration改变引起的 M ...
- php实现兼容Unicode文字的字符串大写和小写转换strtolower()和strtoupper()
前言 网上流传着这么一个腾讯笔试题: PHP的strtolower()和strtoupper()函数在安装非中文系统的server下可能会导致将汉字转换为乱码,请写两个替代的函数实现兼容Unicode ...
- stm32的DMA重新工作
下面是在战舰V3寄存器程序例子中找到的: //开启一次DMA传输void MYDMA_Enable(DMA_Channel_TypeDef*DMA_CHx){ DMA_CHx->CCR&a ...
- phpstorm 2018本地激活
这是简书上找到的,害怕以后找不到,记录一下网址为https://www.jianshu.com/p/133af2e4fe3f
- 设置secureCRT中vim的字体颜色 分类: B3_LINUX 2014-07-12 22:01 1573人阅读 评论(0) 收藏
1.在/etc/vimrc新增以下一行 syntax on 注:上述方法对root用户无效,原因为在一般用户中,alias vi=vim,而在root用户中默认无此设置,因此若需要root用户也显示颜 ...
- 【C++竞赛 H】The sum problem
Time Limit: 1s Memory Limit: 32MB 问题描述 Given a sequence 1,2,3,-,N, your job is to calculate the numb ...
- php汉字字符串长度和截取
mb_strlen("你好123",'utf-8');//返回5 strlen("你好");//返回几我也不知道,肯定不是2,但你想要2就用上面的 substr ...
- SendMessageTimeout 的使用
在WINDOW编程中,发送消息的常用API有SendMessage,PostMessage,PostThreadMessage. 一般每个线程有两个队列:一个用来接收通过Send函数的消息,另外一个队 ...
- 忙里偷闲( ˇˍˇ )闲里偷学【C语言篇】——(3)输入输出函数
一.基本的输入和输出函数的用法 1.printf() //屏幕输出 用法: (1)printf("字符串\n"); (2)printf("输出控制符", 输出 ...
- .NETCore 实现容器化Docker与私有镜像仓库管理
原文:.NETCore 实现容器化Docker与私有镜像仓库管理 一.Docker介绍 Docker是用Go语言编写基于Linux操作系统的一些特性开发的,其提供了操作系统级别的抽象,是一种容器管理技 ...