xmlhttp 提交表单时url超长,急!

来源:百度知道 编辑:UC知道 时间:2024/06/15 02:48:55
xmlhttp 提交表单时url超长
我用xmlhttp无刷新的方式提交表单,xml.open("post","url?p1=XX&p2=XXX",true)。由于提交的文本比较多,造成URL超长,出错。有没有解决的办法?
上面的URL代表提交的地址,P1,P2代表参数名,后面的XXX代表具体参数,这个参数实际是一个很长的东西,例如一千字的文章。

xml.open("POST", "url", true);
xml.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xml.send("p1=XX&p2=XXX");

在服务端用post的方法获取就行

可以改为把post的提交方式改为get方式,你所提交的内容就不会再url中显示了。

send();过去吧 把数据格式成xml然后传过去。或者格式成JSON文本传过去。不过我建议你还是格式成xml,因为新版JSON不支持将文本直接转成JSONObject,所以在server端解析起来比较麻烦。解析xml方法就n多了,用SAX解析会简单些

补充一下,如果你要是纯文本,就直接send('文本'),如果是格式化数据如上所说。

用send(),在服务器端要用 request.getReader();读出来

直接向一个字符串send过去就是

客户端send('字符串');

服务器段取就是 request.getReader();如:
BufferedReader reader = request.getReader();
while ((line = reader.readLine()) != null)
实际上就是IO操作了。

用URL方式带参其实还是GET方式,自然会有限制,大约是240-255个字符,所以要用POST方式然后使用send()方法提交大容量信息。

换成弹出式小窗口呢
或者在form中定义两个hidden 一个p1一个p2