/ Published in: Java
URL: http://bcmoney-mobiletv.com/blog/2009/05/01/the-server-side-proxy/
Java Servlet for making an HTTP request cross-domain.
Nice and simple tutorial: http://www.tidytutorials.com/2009/12/simple-java-proxy-servlet-using.html
Expand |
Embed | Plain Text
package proxy; import java.io.*; import java.util.Enumeration; import java.util.Iterator; import java.util.Map; import java.util.List; import java.util.logging.*; import javax.servlet.*; import javax.servlet.http.*; import java.net.URL; import java.net.HttpURLConnection; private ServletContext servletContext; private Logger log; public void init(ServletConfig servletConfig) throws ServletException { servletContext = servletConfig.getServletContext(); } public void doGet(HttpServletRequest request, HttpServletResponse response){ doPost(request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response){ HttpURLConnection con; try{ int statusCode; int oneByte; String methodName; String headerText; urlString += queryString==null?"":"?"+queryString; log.info("Fetching >"+url.toString()); methodName = request.getMethod(); con.setRequestMethod(methodName); con.setDoOutput(true); con.setDoInput(true); con.setFollowRedirects(false); con.setUseCaches(true); con.setRequestProperty(headerName, request.getHeader(headerName)); } con.connect(); if(methodName.equals("POST")){ while ((oneByte = clientToProxyBuf.read()) != -1) proxyToWebBuf.write(oneByte); proxyToWebBuf.flush(); proxyToWebBuf.close(); clientToProxyBuf.close(); } statusCode = con.getResponseCode(); response.setStatus(statusCode); if(mapEntry.getKey()!=null) } while ((oneByte = webToProxyBuf.read()) != -1) proxyToClientBuf.write(oneByte); proxyToClientBuf.flush(); proxyToClientBuf.close(); webToProxyBuf.close(); con.disconnect(); e.printStackTrace(); } finally{ } } }
You need to login to post a comment.
