在我的项目代码中,需要对URL进行编码。它目前使用httpclient 3.1 jar并使用其方法URIUtil.encodeQuery()来完成这项工作。但我们正在将jar升级到更新的版本,org.apache.httpcomponents 4.4.1。
我找不到encodeQuery方法的任何确切替代品。已经在帖子What happened to URIUtil.encodePath from commons-httpclient-3.1?中讨论过它。
但我仍在寻找encodeQuery()的任何好替代品,任何人都可以提出建议。
由于
答案 0 :(得分:1)
在我们的项目中,我们使用URIBuilder类。
构建器返回标准java URI。
答案 1 :(得分:0)
如果您有一个新项目,建议您使用构建器来遵循the other answer。
在我这边,由于我的项目很旧并且不想重构太多,所以我只是切换到CXF项目中的另一个util类(因为它已经是我的依赖了)。
我刚刚将代码URIUtil.encodeQuery(strQuery)
替换为URIParserUtil.escapeChars(strQuery)
API文档为here。