Path parameter is decoded within the SpringBootLambdaContainerHandler proxy method before it reaches Application's Rest controllers

Offen
#621 8 Kommentare 0 Reaktionen 1 zugewiesene Person Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

@mbfreder arbeitet bereits daran.

Seit 20.2.2024.

Bewertung

Dieses Issue wurde noch nicht bewertet.

Beschreibung

To help us debug your issue fill in the basic information below using the options provided

Serverless Java Container version: 1.9.2

Implementations: Spring Boot

Framework version: SpringBoot 2.7.14

Frontend service: REST API

Deployment method: Serverless Framework

Scenario

Describe what you are trying to accomplish
When we make an api call to the java lambda, we expect the path to be passed in through the handler as is to reach my springboot application's rest controller, extract whatever path parameters are configured and service the request

Expected behavior

Describe how you would expect the application to behave
We expect the SpringBootLambdaContainerHandler to pass the path as is to the application's rest controller to process and perform business as usual functionality

Actual behavior

Describe what you are seeing instead

When we pass a path with an encoded value through the handler method, it will decode the entire path including the encoded value before passing it into my application's rest controller. My application then gives me an internal server error because the encoded value is now decoded when passed to the rest controller, and because the value has a slash in it, the path variable mapping will break.

Steps to reproduce

Unable to provide code sample/logs due to nature of enterprise work

Full log output

Paste the full log output from the Lambda function's CloudWatch logs

logs
Vorherrschende Sprache
Java
Sterne
1.6k
Forks
575
Ø Merge
1 T. 15 Std.
Gemergte PRs (30 T.)
12

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus aws/serverless-java-container

Alle Issues in aws/serverless-java-container

Ähnliche Issues

Weitere Issues zu Java

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.