zhlu001 opened a new issue, #8472:
URL: https://github.com/apache/apisix/issues/8472
### Description
Is it possible to dynamic to add headers in the ext-plugin (We implement a
java based plugin with "apisix-runner-starter, 0.4.0" )?
the methods we tried this method:
` public void filter(HttpRequest request, HttpResponse response,
PluginFilterChain chain `
...
` request.getHeaders().put("abc","abc");
request.getHeaders().put("567","565");`
...
Expectation:
upstream api receives the combined headers (original + dynamic).
client 10 headers --> apisix ext-plugin(java runner) add 2 headers=> 12
headers -> upstream, 12 headers
Actual
upstream api still receives the original headers
client 10 headers --> apisix ext-plugin(java runner) add 2 headers=> 12
headers -> upstream, 10 headers
We noticed that line 223 in the "RpcCallHandler" in the
"org.apache.apisix.plugin.runner.handler" ;package
still using the original request, even the ext-plugin add or remove the
header
Typically, data transmission after plugin should expose interface to
implementer. but currently, plugin only could change the header value, could
not dynamically add / remove headers
thx
### Environment
- APISIX version (run `apisix version`): 3.0
- Operating system (run `uname -a`): Centos7
- OpenResty / Nginx version (run `openresty -V` or `nginx -V`):
- etcd version, if relevant (run `curl
http://127.0.0.1:9090/v1/server_info`): 3.5.x
- APISIX Dashboard version, if relevant:
- Plugin runner version, for issues related to plugin runners:
apisix-runner-starter, 0.4.0
- LuaRocks version, for installation issues (run `luarocks --version`):
--
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]