我有一个带有查询的String
网址(例如https://example.com/path/segments?q1=1&q2=2
)。如果需要使用okhttp 3,我需要在查询前添加尾部斜杠(https://example.com/path/segments
/ ?q1=1&q2=2
)。该怎么办?
答案 0 :(得分:2)
在使用字符串之前,您只需在?
上进行替换,然后将其替换为/?
,就可以得到想要的结果。
这是科特林的一个例子
var url:String = "https://example.com/path/segments?q1=1&q2=2"
url = url.replace("?", "/?")
这应该可行,因为查询变量应该使用urlencode编码,并且您的网址中应该仅出现?
。
答案 1 :(得分:1)
使用httpUrlBuilder.addPathSegment("")
强制在路径末尾添加斜杠。 HttpUrl将每个路径段建模为以/
为前缀,并带有一个空字符串以指示斜杠。