使用java模拟http请求时关于特殊字符的处理+

原创 2016年08月29日 17:03:25

今天根据测试需要.使用java模拟http请求,访问web服务,并传参数.看似简单的问题,却因字符问题卡了一下!故有必要记录一下

问题描述:java模拟http测试中在请求的参数中带有+(加号),请求指定url,后台收到的参数总是异常,而在浏览器中却正常

开始以为是一大串字符中可能没有trim() 或去除一些特殊字符.尝试后均失败.没办法只能笨方法对比一下 浏览器访问和JAVA模拟访问 WEB收到的参数对比一下.

原来+变成空格.

后来灵机一动.想到URLEncoder.encode(String s, String enc),专门用来于url打交道的..果不其然....顺便来段部分代码


URL url = new URL(urlStr);
URLConnection connection = url.openConnection();
	//重要.需要编码,防止特殊字符
			String key = 	URLEncoder.encode(m.get("xxx")+"", "utf-8") +"".trim();
  connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
  // 发送POST请求必须设置如下两行
	            connection.setDoOutput(true);
	            connection.setDoInput(true);
         out = new PrintWriter(connection.getOutputStream());
	            // 发送请求参数
	            out.print(param);
	            // flush输出流的缓冲
	            out.flush();
	 connection.connect();


如果要获取HTTP交互结果可以参考下面的

inputStream = connection.getInputStream();
			            inputStreamReader = new InputStreamReader(inputStream);
			            reader = new BufferedReader(inputStreamReader);



http请求数据包含特殊字符处理(java)

问题描述:android客户端与后台进行网络请求的时候,为了安全起见,我们采用的方法一般是加签名,这个签名可以是Base64加密过的,或是RSA加密过的,这些签名的共同特点就是一大长串字符串,里面包含...
  • bunny1024
  • bunny1024
  • 2017年03月17日 14:02
  • 3541

java处理url中的特殊字符%等

转载: java处理url中的特殊字符(如&,%...) URL(Uniform Resoure Locator,统一资源定位器)是Internet中对资源进行统一定位和管理的标志。 一个完...
  • fgh2009
  • fgh2009
  • 2014年10月22日 02:09
  • 6919

http参数中特殊字符处理

特殊字符 有些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,那么就要使用他们的编码了。编码的格式为:%加字符的ASCII码,即一个百分号%,后面跟对应字符的ASCII(16进制...
  • hellochenlian
  • hellochenlian
  • 2014年08月12日 11:23
  • 31083

http url转义字符,特殊字符

http url转义字符,特殊字符
  • hellochenlian
  • hellochenlian
  • 2014年08月06日 11:16
  • 19160

js与java对http参数含有特殊字符的传递处理

http://www.cnblogs.com/digdeep/p/5580959.html 在使用 url 的 queryString 传递参数时,因为参数的值,被DES加密了,而加密得到的...
  • aosica321
  • aosica321
  • 2016年08月29日 19:38
  • 1481

关于URL中带空格的问题

前些时间做了个文件下载的应用,由于中文
  • u014240933
  • u014240933
  • 2014年05月23日 17:42
  • 7848

URL中关于空格的编码

http://fengchj.com/?p=1940 还有一个文章“陈年老坑之 URL Encoding”也是这方面的文章:https://blog.jamespan.me/2015/05/17/u...
  • hotdust
  • hotdust
  • 2016年11月05日 15:10
  • 2387

java 编码URL中的空格,中文

java.net.URL进行网络连接的时候,如果url中包含中文,空格、花括号的时候,这时候java无法解析。具体请看HttpGet\HttpPost 参数uri注意点...
  • dalancon
  • dalancon
  • 2013年12月12日 14:44
  • 5499

Http url特殊字符转义

原文地址:http://zctya.blog.163.com/blog/static/1209178201242914357634/ URL特殊字符需转义      1、空格换成加号...
  • xjdAlan
  • xjdAlan
  • 2015年01月15日 12:42
  • 4449

网址URL中特殊字符转义编码

网址URL中特殊字符转义编码 字符    -    URL编码值 空格    -    %20 "          -    %22 #         -    %23 %     ...
  • p312011150
  • p312011150
  • 2017年12月29日 09:10
  • 74
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用java模拟http请求时关于特殊字符的处理+
举报原因:
原因补充:

(最多只允许输入30个字)