seesaws opened a new issue, #310:
URL: https://github.com/apache/apisix-java-plugin-runner/issues/310
### 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
<dependency>
<groupId>org.apache.apisix</groupId>
<artifactId>apisix-runner-starter</artifactId>
<version>0.4.0</version>
</dependency>
### 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<String, String>. 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<String, String[]>.
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<String, String>.
* 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<String, String[]>,
matching the behavior of
jakarta.servlet.ServletRequestWrapper.getParameterMap() and correctly retaining
all values for the same key.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]