Skip to content

Commit 15f3d41

Browse files
authored
Add Alternatives. Mention "reverse proxy"
1 parent 8ea1ad8 commit 15f3d41

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

README.md

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
Smiley's HTTP Proxy Servlet
22
===========================
33

4-
This is an HTTP Proxy (aka gateway) in the form of a Java servlet. An HTTP proxy is useful for AJAX applications to communicate with web accessible services on hosts other than where the web application is hosted.
4+
This is an HTTP Proxy (aka gateway) in the form of a Java servlet. An HTTP proxy is useful for AJAX applications to communicate with web accessible services on hosts other than where the web application is hosted. It's a _reverse proxy_, and not really a _forwarding proxy_ albeit the template form of the servlet may blur that line.
55

66
This is hardly the first proxy, so why did I write it and thus why might you use it?
77

@@ -16,6 +16,8 @@ I've found such proxies to support a limited HTTP subset, such as only a GET req
1616
Disappointed at the situation, I set out to create a simple one that works well and that is well tested so I know it works.
1717
I suggest you use a well tested proxy instead of something non-tested that is perhaps better described as a proof-of-concept.
1818

19+
If you need something more sophisticated than there are some alternatives listed at the bottom of this page.
20+
1921
This proxy depends on [Apache HttpClient](http://hc.apache.org/httpcomponents-client-ga/), which offers another point of extension for this proxy.
2022
At some point I may write an alternative that uses the JDK and thus doesn't have any dependencies, which is desirable.
2123
In the mean time, you'll have to add the jar files for this and its dependencies:
@@ -199,3 +201,10 @@ Then create register Smiley's proxy servlet with Jetty through the Dropwizard se
199201
.addServlet("org.mitre.dsmiley.httpproxy.ProxyServlet", "foo/*")
200202
.setInitParameter("targetUri", configuration.getTargetUri());
201203
```
204+
205+
Alternatives
206+
-------------
207+
This servlet is intentionally simple and limited in scope. As such it may not meet your needs, so consider looking at these alternatives:
208+
* Jetty's ProxyServlet: https://www.eclipse.org/jetty/documentation/9.4.x/proxy-servlet.html This is perhaps the closest competitor (simple, limited scope, no dependencies), and may very well already be on your classpath.
209+
* Netflix's Zuul: https://github.com/Netflix/zuul
210+
* Charon: https://github.com/mkopylec/charon-spring-boot-starter

0 commit comments

Comments
 (0)