查询字符串值的http编码

时间:2013-02-11 14:11:03

标签: http encoding

我必须在Java中的http请求中编码querystring值。例如:

http://mysite.com/service?name=James Smith& address = my street

必须成为:

http://mysite.com/service?name=James%20Smith&address=my%20street

我必须在输入中有查询字符串值的方法中这样做,所以我只需要编码值(James Smith,我的街道,ecc。)。我正在考虑使用这个方法org.apache.commons.httpclient.util.URIUtil.encodeWithinQuery:这是对的吗?关于编码http请求,我看到了许多令人困惑的讨论。

1 个答案:

答案 0 :(得分:0)

您可以使用

对URL进行URLEncode
yourNewURL = java.net.URLEncoder.encode(oldurl.toString(), "ISO-8859-1").replace("+", "%20"));

请看这个讨论以获得进一步的解释:

URLEncoder not able to translate space character