我正在使用OkHttp 2.4.0.
HttpUrl url = new HttpUrl.Builder() .scheme("https") .host("www.something.com") .addPathSegment("/api/v1/doc") .build();
预期的网址是:https://www.something.com/api/v1/doc
我得到的是:https://www.something.com%2Fapi%2Fv1%2Fdoc
pathSegment中的“/”替换为“/”.为什么会发生这种情况以及如何避免这种情况,因为我得到了一个无效的Url异常,因为apache在url中不允许使用“/”.
解决方法
试试这个:
HttpUrl url = new HttpUrl.Builder() .scheme("https") .host("www.something.com") .addPathSegment("api") .addPathSegment("v1") .addPathSegment("doc") .build();