Skip to content

Components of the request url get decoded prior to the routing process #200

Closed
@rnowosielski

Description

@rnowosielski
  • Framework version: 1.1.4
  • Implementations: Jersey

Scenario

I am using path parameters in my REST api which are url encoded. However they get decoded before the routing, so if the url encoded value contained url encoded slashed this breaks my routes.

Example:

https://my.api/v0/http%3A%2F%2Fsome.resource.url

gets treated as

https://my.api/v0/http:/some.resource.url

and since the path defined in my app is @Path("/v0/{resourceUrl") my requests gets a 404

Expected behavior

Url encoded parts of the request url should stay url encoded for the routing process.

Actual behavior

Url encoded parts of the request get decoded before the routing process.

Steps to reproduce

Create a controller with a path @Path("/v0/{resourceUrl") and try to receive the value http%3A%2F%2Fsome.resource.url (or actually http://some.resource.url) as the resourceUrl path parameter

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions