今天写了个程序,代码如下:
public class Test {
/**
* @param args
*/
public static void main(String[] args) throws Exception {
String urlStr = "http://localhost:8080/bhtsys/index.jsp?name=1 中华人民共和国";
URL url = new URL(urlStr);
URLConnection hpCon = url.openConnection();
InputStream in = hpCon.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String line = "";
while ((line = br.readLine()) != null) {
System.out.println(line);
}
}
}
index.jsp页面如下:
<body bgcolor="red">
中华人民共和国
<%
String name=request.getParameter("name");
name=new String(name.getBytes("iso-8859-1"),"UTF-8");
out.println(name);
%>
</body>
一运行报如下错误:
Exception in thread "main" java.io.IOException: Server returned HTTP response code: 505 for URL: http://localhost:8080/bhtsys/index.jsp?name=1 中华人民共和国
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1313)
at com.bhtec.action.Test.main(Test.java:19)
于是到网上查一下:
原来是参数中有空格导致的,解决方法为:1、用+或者%20代替url参数中的空格。2、或者在提交参数时对url使用js中encodeURIComponent函数。 代码如下:
public class Test {
/**
* @param args
*/
public static void main(String[] args) throws Exception {
String urlStr = "http://localhost:8080/bhtsys/index.jsp?name=1 中华人民共和国";
urlStr=urlStr.replace(" ", "%20");
URL url = new URL(urlStr);
URLConnection hpCon = url.openConnection();
InputStream in = hpCon.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String line = "";
while ((line = br.readLine()) != null) {
System.out.println(line);
}
}
分享到:
相关推荐
url出现了有+,空格,/,?,%,#,&,=等特殊符号的时候,可能在服务器端无法获得正确的参数值,...+ URL 中+号表示空格 + 空格 URL中的空格可以用+号或者编码 / 分隔目录和子目录 / ? 分隔实际的URL和参数
从A页面通过url传参到B页面时,获取URL中参数出现中文乱码问题,解析url参数的正确方法如下,感兴趣的朋友可以参考下
在URL传递参数中,有一些特殊字符,而这些些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,那么就要使用他们的编码了。下表中列出了一些URL特殊符号及编码十六进制值 1. + URL 中+号表示空格 + 2. ...
javascript 取Url参数和去掉字符串前后空格方法,非常实用
对项目中的所有参数去除前后空格过滤,统一处理参数!可以基于此过滤器实现过滤跨站脚本攻击,参数的增加,修改!敏感词汇过滤。实现原理为重写HttpServletRequestWrapper,获取参数的方法。include和 Forwarded ...
url分类解决URL里面的空格、中文、及其他特殊字符问题
主要介绍了Java Http请求传json数据乱码问题的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
今天在调试客户端向服务器传递参数时,参数中的“+”全部变成了空格,原因是URL中默认的将“+”号转义了,经过以下步骤解决了,需要的朋友可以参考一下
1.路径名中的文件名有空格,Astyle报错,可是我们在使用过程中文件夹命名带空格已成习惯,如:E:\Program Design; 2.文件名和路径名如果包含中文字符,报错,如E:\测试.cpp或者E:\程序设计\os.cpp 对于开源的东西...
url参数中有+、空格、=、%、&、#等特殊符号的问题解决,需要的朋友可以参考一下
PHPStorm中SVN因目录中含有空格,不允许update等操作.zip
空格 URL中的空格可以用+号或者编码 3. / 分隔目录和子目录 / 4. ? 分隔实际的 URL 和参数 ? 5. % 指定特殊字符 % 6. # 表示书签 # 7. & URL 中指定的参数间的分隔符 & 8. = URL 中指定参数的值 = 解决的方法:...
传带空格的命令行参数,处理类似document and setting之类的问题
1.路径名中的文件名有空格,Astyle报错,可是我们在使用过程中文件夹命名带空格已成习惯,如:E:\Program Design; 2.文件名和路径名如果包含中文字符,报错,如E:\测试.cpp或者E:\程序设计\os.cpp 对于开源的东西...
在某网站主页提取url进行迭代,爬虫请求主页时没有问题,返回正常,但是在访问在主页提取到的url时出现了400状态码(400 Bad Request)。 结论 先贴出结论来,如果url里有空格的话,要把空格替换成 ,也就是url编码,...
去除参数空格(换行之类的)的 一个小工具 很适合打印接口参数 去除参数之间的换行 空格之类的 解析不出来错误的问题的一个小工具
内有两套对rar操作的方法, 通过调用本地rar.exe的支持对路径中含有空格的rar进行操作
拷贝的关键字经常含有很多空格、换行、tab键之类的空白字符,该工具自动去除空白字符,进行搜索。使用方法:在输入款粘贴后,点百度搜索即可。
html中输入空格的解决方案html中输入空格的解决方案 - 云之狼 - 网易博客.htm