我有兴趣通过使用Java 8和Spring Boot构建我自己的(简单)转发代理来了解有关HTTP以及代理如何工作的更多信息。我读过的文章(我有兴趣实施)是here。我感兴趣的主要三个前向代理功能是:
此处的目标是将此代理构建为Spring Boot应用程序,在本地运行,然后配置浏览器以使用此本地代理。最终我会将它部署到非本地环境,但首先要先将它部署。
我并不真正关心这些功能的实现细节 - 我可以弄清楚如何编写/实现它们。我想知道的是:提供这些类型的功能的最佳Spring / JavaEE构造是什么? Java EE servlet过滤器?弹簧控制器?其他一些(也许是基于AOP的)构造?
同样,这个想法是为了:
http://localhost:8080/myproxy
http://example.com
http://example.com
)传递给代理,再次在http://localhost:8080/myproxy
http://example.com
)转发(或制作全新的 ??? )请求我倾向于使用servlet过滤器或Spring控制器方法,但不确定哪种方法适合于呈现这些类型的功能。有什么想法吗?
答案 0 :(得分:0)
出于学习目的,您可能希望避免使用Spring,而只需要实现一个简单的HttpServlet。从那里你可以检查HttpServletRequest对象做任何事情,包括转发它。您可以在servlet本身中实现缓存逻辑,但是,添加一个使用缓存行为增强servlet的ServletFilter可能是有意义的。