spring-cloud / spring-cloud/spring-cloud-gateway

Unexpected changes to query string

Open
#3,197 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

waiting-for-triage
Dominant language
Java
Stars
4.9k
Forks
3.5k
Avg merge
20h 57m
Merged PRs (30d)
8

Description

Describe the bug
I use gateway mvc to reverse proxy vite.
ProxyExchangeHandlerFunction changes the query string part of the url, causing vite to reply with different response.

Sample
originally http://localhost:5174/src/components/HelloWorld.vue?scoped=e17ea971&index=0&type=style&vue=&lang.css
change to http://localhost:5174/src/components/HelloWorld.vue?scoped=e17ea971&index=0&type=style&vue=&lang.css=
There is an extra '=' character at the end.

It all seems to be in ProxyExchangeHandlerFunction.handle caused by UriComponentsBuilder.replaceQueryParams.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at ProxyExchangeHandlerFunction.handle and inspect how UriComponentsBuilder.replaceQueryParams processes the proxy request. Reproduce the Vite URL example and verify that the query string is forwarded without adding an extra trailing '='.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, spring, spring-boot, vite
Domain
api, backend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.