2007-01-16
用AjaxProxyServlet 跨域ajax请求
关键字: java ajax老庄的代码里用了DataInputStream,这个类的readLine()不被推荐使用,所以换成了InputStreamReader
添加了代码来处理Ajax请求中的参数。
java 代码
添加了代码来处理Ajax请求中的参数。
java 代码
- /*
- * Created on 2007-1-16
- */
- import javax.servlet.http.HttpServlet;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.URL;
import java.util.Enumeration;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class AjaxProxyServlet extends HttpServlet {
protected void service(HttpServletRequest req,
HttpServletResponse resp) throws ServletException,
IOException {
resp.setContentType("text/html");
PrintWriter pw = resp.getWriter();
Enumeration paramNames = req.getParameterNames();
StringBuffer bfParams = new StringBuffer();
bfParams.append(req.getParameter("url")).append("?1=1");
while(paramNames.hasMoreElements()) {
String param = (String)paramNames.nextElement();
if("url".equals(param)){continue;}
bfParams.append("&").append(param).append("=").append(req.getParameter(param));
}
URL url = new URL(bfParams.toString());
BufferedReader bf =
new BufferedReader(new InputStreamReader(url.openStream()));
String line;
while ((line = bf.readLine()) != null) {
pw.println(line);
}
bf.close();
}
}
发表评论
最新评论
-
使用ubuntu作为工作桌面详 ...
Oracle的Oracle SQLDeveloper可以用也可以把windowz ...
-- by zhoun -
使用ubuntu作为工作桌面详 ...
Ivan Li 写道moonjava 写道一些数据库的客户端呢? Oracle可 ...
-- by moonjava -
使用ubuntu作为工作桌面详 ...
moonjava 写道一些数据库的客户端呢? Oracle可以用Oracle S ...
-- by Ivan Li -
使用ubuntu作为工作桌面详 ...
写得不错!只是觉得linux下顺手的软件太少
-- by vdgame -
使用ubuntu作为工作桌面详 ...
一些数据库的客户端呢?
-- by moonjava







评论排行榜