apache / apache/apisix-java-plugin-runner

bug: request get Args params

Open
#310 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
152
Forks
102
PR merge metrics
No merged PRs in 30d

Description

### Issue description

### Environment
* Operating System: Windows 11
* JDK Version: 17
*IDE: IntelliJ IDEA 2024.1.4U
* APISIX Java Plugin Runner Version: 0.4.0
* Maven Dependency

org.apache.apisix
apisix-runner-starter
0.4.0

### Minimal test code / Steps to reproduce the issue

When using the getArgs method of the org.apache.apisix.plugin.runner.HttpRequest class, the returned parameter type is Map. The expected behavior is for it to return a parameter type consistent with the getParameterMap method of the jakarta.servlet.ServletRequestWrapper class, which is Map.
Steps to Reproduce the Issue
Set the Maven dependency to apisix-runner-starter version 0.4.0.
Use the HttpRequest.getArgs() method in the APISIX Java Plugin to retrieve parameters.
Submit multiple parameters with the same key using a GET method or POST form.
### What's the actual result? (including assertion message & call stack if applicable)
* HttpRequest.getArgs() returns parameters as Map.
* When using GET or POST forms with multiple parameters having the same key, previous key-value pairs are lost, and only the last key-value pair is retained.
### What's the expected result?
HttpRequest.getArgs() should return parameters as Map, matching the behavior of jakarta.servlet.ServletRequestWrapper.getParameterMap() and correctly retaining all values for the same key.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.