使用 OkHttp3 在查询参数之前强制尾部斜杠
Forcing trailing slash before query params with OkHttp3
我有一个 String
url 查询(例如 https://example.com/path/segments?q1=1&q2=2
)。如果使用 okhttp 3 不存在,我需要在查询之前添加尾部斜杠 (https://example.com/path/segments
/?q1=1&q2=2
)。我该怎么做?
在使用字符串之前,您只需对 ?
进行替换并将其替换为 /?
即可获得所需的结果。
这是 Kotlin 中的示例
var url:String = "https://example.com/path/segments?q1=1&q2=2"
url = url.replace("?", "/?")
这应该有效,因为查询变量应该经过 urlencoded,并且在您的网址中应该只出现一次 ?
。
使用httpUrlBuilder.addPathSegment("")
强制在路径末尾添加斜线。 HttpUrl 将每个路径段建模为前缀为 /
,空字符串表示单独的斜杠。
我有一个 String
url 查询(例如 https://example.com/path/segments?q1=1&q2=2
)。如果使用 okhttp 3 不存在,我需要在查询之前添加尾部斜杠 (https://example.com/path/segments
/?q1=1&q2=2
)。我该怎么做?
在使用字符串之前,您只需对 ?
进行替换并将其替换为 /?
即可获得所需的结果。
这是 Kotlin 中的示例
var url:String = "https://example.com/path/segments?q1=1&q2=2"
url = url.replace("?", "/?")
这应该有效,因为查询变量应该经过 urlencoded,并且在您的网址中应该只出现一次 ?
。
使用httpUrlBuilder.addPathSegment("")
强制在路径末尾添加斜线。 HttpUrl 将每个路径段建模为前缀为 /
,空字符串表示单独的斜杠。