Skip to content

Requests With Query Parameters With "+" Character Do Not WorkΒ #4044

@Odoyle-Rules

Description

@Odoyle-Rules

Describe the bug

When a user of our platform has an account with an email address with a "+" in it (e.g. [email protected]), REST requests that have query parameters that use the email address do not work. Other REST requests where the same email is used in the body of the call are successful. Users with accounts on our platform that use the Android version of the Amplify library are just fine making the same calls with the "+" character in the email address in the query parameters.

I have tried encoding the query parameters and I get the same error from AWSAPIGateway. When I encode the query parameter, the error returned from AWS has the full URL and shows the decoded query parameters in the URL.

I found a related issue here: #3955

Steps To Reproduce

Make an HTTP request to an AWSAPIGateway endpoint using Amplify for Swift and include a string query parameter value with a "+" character in it.

Expected behavior

I need Amplify to treat this string as a string, encode it if necessary, but I need this request to make it to my endpoint.

Amplify Framework Version

2.46.2

Amplify Categories

API

Dependency manager

Swift PM

Swift version

5

CLI version

Not installed

Xcode version

16.4

Relevant log output

Is this a regression?

No

Regression additional context

No response

Platforms

iOS

OS Version

18.6.1

Device

iPhone 12 mini

Specific to simulators

No response

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    apiIssues related to the API categorybugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions