jsp中取servlet中传的参数被自动截断了是什么原因?

在servlet中用如下形式传递参数http://www.test.com?backurl=http://www.abc.com?param1=a¶m2=b为什么... 在servlet中用如下形式传递参数
http://www.test.com?backurl=http://www.abc.com?param1=a¶m2=b
为什么我在jsp中取到的backurl为
http://www.abc.com?param1=a
在连接两个参数的地方&符号处被截断了,这个是什么原因啊?在线等答案,谢谢达人们~~~
展开
 我来答
ヤマザキ266e77
2010-07-05 · TA获得超过2052个赞
知道小有建树答主
回答量:721
采纳率:0%
帮助的人:988万
展开全部
因为&在这里被认为是特殊字符,因此会将param2=b认为是www.test.com中的参数。
为了避免这种情况,在你的servlet中,对参数http://www.abc.com?param1=a¶m2=b需要先进行encode转码,再拼到backurl=后面。
同理,页面接收后也要进行decode解码再使用。

具体的转码和解码的代码你可以搜一下,用到的类应该是URLEncoder和URLDecoder。
siwei645
2010-07-05 · 超过28用户采纳过TA的回答
知道答主
回答量:61
采纳率:0%
帮助的人:60.9万
展开全部
截取最后一个问号开始的参数列表
?parame=1¶me2=2
修改成
backurl='xxx?p1=1&p2=2'
试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友4db9f31
2010-07-05 · TA获得超过410个赞
知道小有建树答主
回答量:355
采纳率:0%
帮助的人:326万
展开全部
因为你用&了啊
认定是2个参数了
backurl=http://www.abc.com?param1=a
param2=b
传递的是2个参数而不是backurl一个参数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fantasyyjp
2010-07-05 · 超过34用户采纳过TA的回答
知道答主
回答量:101
采纳率:0%
帮助的人:0
展开全部
backurl的值是后面的一长串还是只到param1=a啊?
你可以把你的值用‘’扩一下
要不就具体点?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式