项目需要,需要以自身项目所写的接口做为服务端被调用,前端H5调用该接口是没有任何问题的,然而自己用Http post请求来调用的时候却出现了如下错误:
java.io.IOException: Server returned HTTP response code: 500 for URL: 你的路径
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0 (HttpURLConnection.java:1894)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream (HttpURLConnection.java:1492)
at com.deppon.module.common.util.HttpRequestUtil.httpPost(HttpRequestUtil.java:195)
.
.
.
上网查了很多资料,答案很多,试了好几种都没有解决,然后分析了代码,唯一可能有错误的只有参数有问题,但有的参数没有问题,换个参数就会有出现这个问题,最终发现是参数中含有空格字符,也就是参数的编码有问题,使用**URLEncoder.encode()**这个方法就解决了这个问题。
String param = java.net.URLEncoder.encode(content, "UTF-8");
最后还得感谢这位老铁,看了他的分享才解决的