java url特殊字符串转码不了

Gemerl 2015-08-20 11:30:13
就是别的系统 要发一个get请求到我们系统
比如他们过来的链接是 http://csdn.net?sgin=higeigiengineihiwehi=iiiini+

然后我在我们系统后台用request取这个sgin的时候 发现higeigiengineihiwehi=iiiini+中的 =和+被转义了 =转成了&开头的

用java.net下面的类根本解码不了 java.net中编码后的特殊字符都是以%开头 所以根本解码不了
...全文
560 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
钻石丶青春 2015-08-26
  • 打赏
  • 举报
回复
var url = purl+ "task.dh?key=download&FILEPATH=" + encodeURIComponent(FILEPATH)+"&FILENAME="+encodeURIComponent(FILENAME)+"&ID="+encodeURIComponent(ID); location.href=url; 这样纸搞一搞
tianfang 2015-08-21
  • 打赏
  • 举报
回复
都约定使用 urlencode/ urldecode 处理
Cx_轩 2015-08-21
  • 打赏
  • 举报
回复
前台有特殊字符比如+号之类的 转换成十六进制啊 %2B 就可以了
nicholasbobo 2015-08-21
  • 打赏
  • 举报
回复
比如"="被转成"&eq;"这种,肯定是别人写死了的,那你解码也必须要照这个规则去解码
nicholasbobo 2015-08-21
  • 打赏
  • 举报
回复
你要问对方怎么编码的,两边解码编码要统一
Gemerl 2015-08-21
  • 打赏
  • 举报
回复
哦,你这是js函数呀!别人传过来的请求直接到我后台的js无法接收的
Gemerl 2015-08-21
  • 打赏
  • 举报
回复
不行你这request都不到null
a_b_a_b_a_b_a_b 2015-08-21
  • 打赏
  • 举报
回复
需要由对方进行编码的,试一下2楼的方法,一次escape不行两次,你这边看能不能收到正确的参数,使用java.net转码,多试几次,总能成功的
sunshiwu1984 2015-08-21
  • 打赏
  • 举报
回复
http://csdn.net?sgin=escape(higeigiengineihiwehi=iiiini+)试试这样
Gemerl 2015-08-21
  • 打赏
  • 举报
回复
听其他系统的人说不能发post请求,请各位看客别说post

67,514

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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