Skip to content

Provide a way to disable URL Encoding for PathVariables in HttpExchange clients #35016

Open
@krzyk

Description

@krzyk

I have a HttpExchange client for e.g. BitBucket server, where the client looks like this:

public interface BitbucketClient {

    @GetExchange("/projects/{project}/repos/{repo}/raw/{path}?at={ref}")
    String raw(@PathVariable String project, @PathVariable String repo, @PathVariable String ref, @PathVariable String path);

}

path parameter can contain slashes (/) - because it is a path inside a repo (e.g. src/main/resources/file.txt) so encoding it breaks the API.

It would be good to have a param in PathVariable that would disable encoding (e.g. @PathVariable(encode = false) String path).

(this was reported earlier at #32041 but it stalled)

Metadata

Metadata

Assignees

No one assigned

    Labels

    in: webIssues in web modules (web, webmvc, webflux, websocket)status: waiting-for-feedbackWe need additional information before we can continuestatus: waiting-for-triageAn issue we've not yet triaged or decided on

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions