【javascript】ajax跨域post传值

jsp跨域访问代理,虽然实现了,但是我这里post方式传值二进制值过大无法实现。悲剧还是没达到理想效果。



<%@ page import="java.net.*,java.util.*,java.lang.*,java.io.*,java.net.URLEncoder"%>
<%@ page contentType="text/xml;charset=gb2312"%>
<%
	String url = null;
	StringBuffer params = new StringBuffer();
	Enumeration enu = request.getParameterNames();
	int total = 0;
	while (enu.hasMoreElements()) {
		String paramName = (String) enu.nextElement();
		if (paramName.equals("url")) {
			url = request.getParameter(paramName);
		} else {
			if (total == 0) {
				params.append(paramName).append("=").append(
						URLEncoder.encode(request
								.getParameter(paramName), "UTF-8"));
			} else {
				params.append("&").append(paramName).append("=")
						.append(
								URLEncoder.encode(request
										.getParameter(paramName),
										"UTF-8"));
			}
			++total;
		}
	}
	String para = request.getParameter("file");
	
	//System.out.println("=========="+url.toString()+"?file="+URLEncoder.encode(para));
	System.out.println("=========="+URLEncoder.encode(para).substring(0,500));
	if (url != null) {
		// 使用GET方式向目的服务器发送请求
		URL connect = new URL(url.toString()+"?file="+URLEncoder.encode(para).toString()+"&fileName=sss");
		URLConnection connection = connect.openConnection();
		HttpURLConnection httpConn = (HttpURLConnection) connection;
		
		//connection.setDoOutput(true);
		//connection.setDoInput(true);
		//connection.setRequestProperty("Content-type",
		//		"application/x-www-form-urlencoded");
		//connection.connect();
		
		// httpConn.setRequestProperty("Content-Length", String.valueOf(b.length));
	    // httpConn.setRequestProperty("Content-Type", "text/xml; charset=utf-8");
		 //httpConn.setRequestProperty("SOAPAction", SOAPAction);
		 httpConn.setRequestMethod("POST");
	 	 httpConn.setDoOutput(true);
	 	 httpConn.setDoInput(true);
	 	 httpConn.setRequestProperty("Content-type",
				"application/x-www-form-urlencoded");
	 	 httpConn.connect();
 
 
		//获得连接输出流 
		DataOutputStream os = new DataOutputStream(connection
				.getOutputStream());
				
		os.flush();
		os.close();

		BufferedReader reader = new BufferedReader(
				new InputStreamReader(connection.getInputStream()));
		String line;
		while ((line = reader.readLine()) != null) {
			out.println(line);
		}
		reader.close();
	}
%>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值