Skip to content

Querystring url encode in backend #1038

@thinkingmik

Description

@thinkingmik

Environment info:

  • KrakenD version: 2.11.0
  • System info: docker

Describe what are you trying to do:
I'm trying to call, passing through Krakend, the url:

GET https://example.org/mcapi/qgis??PROJECT=/projects/57001_Accumoli/57001_Accumoli.qgz&SERVICE=WMS&REQUEST=GetLegendGraphic&LAYER=CGT_MS_Elineari&FORMAT=application/json&STYLE=default&SLD_VERSION=1.1.0&SHOWFEATURECOUNT=true&SHOWRULEDETAILS=true

I see that the request to backend service qgis-server:80 was made with urlencoded params in querystring (slash encoded with %2F):

?FORMAT=application%2Fjson&LAYER=CGT_MS_Elineari&PROJECT=%2Fprojects%2F57001_Accumoli%2F57001_Accumoli.qgz&REQUEST=GetLegendGraphic&SERVICE=WMS&SHOWFEATURECOUNT=true&SHOWRULEDETAILS=true&SLD_VERSION=1.1.0&STYLE=default

Question:
Is there a possibility (some config) to leave query string parameters not urlencoded while calling backend service?

Configuration:
This is the endpoint's configuration:

{
    "method": "GET",
    "endpoint": "/mcapi/qgis",
    "output_encoding": "no-op",
    "concurrent_calls": 1,
    "input_headers": [
        "*"
    ],
    "input_query_strings": [
        "*"
    ],
    "backend": [
        {
            "host": [
                "http://qgis-server:80"
            ],
            "url_pattern": "/qgis/",
            "sd": "static",
            "disable_host_sanitize": true,
            "encoding": "no-op",
        }
    ]
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions