我在对 URL 进行编码时遇到问题。我的网址可能包含一个路径参数,其中可以包含斜杠“/”。我需要将此路径参数发送到外部 API。这始终是加密+编码的。但我在编码“/”时遇到问题。除了“/”之外,其他所有内容都是编码。
示例:
https://url.com/bdvchewcbwj%2Fhbsdwhjkbq%3D
在上面的示例中,未编码的路径参数是:
bdvchewcbwj/hbsdwhjkbq=
当我对上述路径参数进行编码时,我期望 url 为:
https://url.com/bdvchewcbwj%2Fhbsdwhjkbq%3D
但结果是:
bdvchewcbwj/hbsdwhjkb%3D
输入:
https://url.com/bdvchewcbwj/hbsdwhjkbq%3D
预期输出:
https://url.com/bdvchewcbwj%2Fhbsdwhjkbq%3D
我正在使用 okHttp 客户端来创建请求。是否有任何库只对未编码的字符进行编码,留下已编码的字符?
最佳答案
如何对参数进行编码?对我来说
URLEncoder.encode("bdvchewcbwj/hbsdwhjkbq=","UTF-8");
按预期工作,结果为
bdvchewcbwj%2Fhbsdwhjkbq%3D
关于java - 具有 '/' 的路径参数的 URL 编码问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53091480/