Skip to content

AWS.Client mangles query parameters. #382

@Rombobeorn

Description

@Rombobeorn

AWS.Client mangles query parameters in some cases by percent-encoding the wrong character.

Here's an example that's easy to reproduce: Apache HTTPD can output file lists on request. A URL like "https://example.net/dir/?C=S;O=D" asks the server to sort the files by size in descending order. AWS.Client.Get sends that URL as "/dir/?C=S;O%3DD". The second equals sign gets encoded to not have any particular meaning. Thus Apache doesn't recognize the parameter "O=D", and sorts in ascending order instead.

A server that generates its own URLs is free to use any syntax it wants in the query part. A client-side library that receives ready-made URLs shall pass them through unmangled.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions