Java如何实现代理服务器?
代理服务器的作用,大家是有目共睹的,确实给我们带来了很大的方便,Java如何实现代理服务器?
首先,这个需求可以简化为:
1、代理服务主机将客户机与代理服务主机之间的请求截获,然后直接将信息转发给目标主机;
2、代理服务主机将目标主机的回应直接转发给客户机。
代理服务主机可以通过socket直接获取客户机发送到本机指定端口的数据报文,那么通过分析内容可以得到客户机想要发送给目标主机的信息,代理服务主机可以通过socket的方式再次重新请求,将原来请求中的内容转发给目标主机,之后将目标主机的回应转发给客户机。
对于Java SE项目来说,有两者方式来实现:
1、采用原生的Java socket 编程。(存在多线程问题…)
2、采用第三方的网络应用框架,比如:mina、netty等。(开发简单,稳定可靠)
对于Java WEB项目来说,也有两者方式来实现:
1、采用上面的Java SE方案。
2、HTTP代理,拦截客户端的请求,并采用Http协议发送GET/POST请求给目标服务器。
Java如何实现代理服务器?相关推荐
- 用Java开发HTTP代理服务器
HTTP代理服务器是一种网络应用,它充当位于客户端和目标服务器之间的中间节点,将客户端发出的HTTP请求转发给目标服务器,并将目标服务器返回的HTTP响应内容回传给客户端.通过使用代理服务器,客户端可 ...
- Java实现Http代理服务器通过http代理进行内网安装yum软件
Java实现Http代理服务器&通过http代理进行内网安装yum软件 1.Http代理服务器简介 2.Http代理服务器Java实现 2.1 Java源码 2.2 代码分析说明 3.通过ht ...
- JAVA写HTTP代理服务器(三)-https明文捕获
上一篇用netty实现的http代理服务器还无法对https报文进行解密,原因也说了,就是服务器的私钥不在我们这,根据RSA公钥加密私钥解密的特性,如果我们没有私钥的话是不可能获取到https的真实内 ...
- Java后端通过代理服务器请求网络资源
1.需求 部署在内网服务器的JavaWeb项目,后端需要访问互联网,通过有网络访问权限的另一台服务器的代理转发实现互联网访问. 2.实现 内网设备--设为A,通过外网设备--设为B,访问互联网,需要分 ...
- Java实现sock5代理服务器
入职练手socks5代理服务器,过程总结一下. 1.下载火狐浏览器,设定代理为socks5代理,地址为127.0.0.1:1080. 2.socks5协议1928,中文版,原版,认真阅读 3.按照协议 ...
- JAVA写HTTP代理服务器(一)-socket实现
HTTP代理服务器是一种特殊的网络服务,允许一个网络终端(一般为客户端)通过这个服务与另一个网络终端(一般为服务器)进行非直接的连接.一些网关.路由器等网络设备具备网络代理功能.一般认为代理服务有利于 ...
- JAVA写HTTP代理服务器(二)-netty实现
接上一篇,因为是用BIO的一个连接一个线程去处理,对于HTTP这种短连接协议来说CPU开销是非常大的,就算加入了线程池也不能完美解决BIO的缺陷,所以可以用NIO进行服务器的优化,NIO基于IO多路复 ...
- Java实现Socket5代理服务器
直接贴代码,不解释 1 主服务,用来侦听端口 package org.javaren.proxy;import java.net.ServerSocket; import java.net.Socke ...
- Java编写代理服务器(Burp拦截Demo)一
大家都知道大名鼎鼎的BurpSuite代理神器,对于抓取HTTP请求非常好用,偶然,一朋友问我Java应该如何去编写代理服务器(因为他想做某些东西),有没有相关的API 去实现,我想说,差不多你能想到 ...
- Java实现HTTP文件下载(转)
文章出自: http://www.360doc.com/content/12/1218/17/2718300_254818081.shtml 本人用这种方法解决了工作中遇到的问题,再次谢谢文章的作者. ...
最新文章
- 地面标识检测与识别算法
- sql server几种读写分离方案的比较
- python api开发用什么框架_python+requests接口自动化框架
- NEO versus Ethereum: Why NEO might be 2018’s strongest cryptocurrency
- spring源码分析第二天------spring系统概述以及IOC实现原理
- Redis系列1——概述
- 工作记录 反射
- Spring经典高频面试题,原来是长这个样子
- IDEA,Pycharm等环境中复制代码到word去除黑色背景
- (译)Xposed Helpers
- vue-router
- 【python第3课】顺序、循环、分支
- 几种求函数最值的算法
- 京东商城ContainerLB实践
- 怎样用计算机给ipd传电影,怎样不使用iTunes将电影导入iPad?
- 微信小程序访问后端服务器
- tomcat配置url跳转_Tomcat
- COVID应对小tips
- html中a标签的属性
- 国家知识产权局一行走访易保全调研区块链,提升相关专利审查工作质效