使用new URI(..., ..., path, ..., ...)
时,我需要生成一个包含%2F
(编码正斜杠)的URI。但是,我找不到办法做到这一点。
这是为了使用GitLab API,它要求命名空间项目名称:
如果使用命名空间项目,请确保NAMESPACE / PROJECT_NAME是URL编码的,例如。
/api/v3/projects/diaspora%2Fdiaspora
(其中/
由%2F
表示。)
如果我将path
参数设置为/foo/bar%2Fstool
,则会导致URI输出/foo/bar%%2Fstool
(它会转义%
,因为Javadocs会指示它。) p>
如果我将其设置为/foo/bar/stool
,那么我当然会在最后获得/foo/bar/stool
。
如何让URI
多参数构造函数无法转义%
参数中的path
字符,还是有其他方法可以让它执行此操作?
请注意,我没有选择调用其他构造函数;我不是那个实际上叫它的人。我正在使用构建URI
对象的第三方代码。
谢谢!