AJAX中的XMLHttpRequest关于url长度问题

ruanwxh 2010-05-13 09:40:08

function changeMainFrameToManualDial(phone_id)
{

if( !initXMLHttp() )
return;
xmlHttpReq.open("GET","../service/xml_user_call_prop.jsp?userId=<%=user.getId()%>&now="+ getDateTime() +"&phone_id="+phone_id, true);
xmlHttpReq.onreadystatechange = HandleGetUserCallProp;
xmlHttpReq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlHttpReq.send(null);
}
function HandleGetUserCallProp()
{
if(xmlHttpReq.readyState != 4) return;
if(xmlHttpReq.status != 200) {
alert("你请求的页面错误2");
return;
}
........
}

主要代码如上,当phone_id的长度大于等于11位时,会出现alert("你请求的页面错误2");
小于11位时,正常。
请问下这是什么原因?好像url限制长度没那么短吧。
...全文
90 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ruanwxh 2010-05-13
  • 打赏
  • 举报
回复
多谢楼上,找到错误原因。是我的xml_user_call_prop.jsp页面出错了
我有int获取phone_id,当超过11时,超出int的最大范围.呵呵...
  • 打赏
  • 举报
回复
是你自己的xml_user_call_prop.jsp这个页面发生错误吧?

还有就是IE为get时,url最大长度为是2083字节(2K+35)。
对于其他浏览器,如Netscape、FireFox等,理论上没有长度限制,其限制取决于操作系统的支持

你输出响应内容看看

function HandleGetUserCallProp()
{
if(xmlHttpReq.readyState != 4) return;
if(xmlHttpReq.status != 200) {
alert("你请求的页面错误2\n\n"+xmlHttpReq.responseText);
return;
}
}

52,792

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧