apache / apache/servicecomb-java-chassis
EdgeAddHeaderClientFilter只能传递单个值的header
未关闭
- 主要语言
- Java
- 星标
- 1.9k
- 派生
- 814
- 平均合并
- 8 天 23 小时
- 30 天内合并 PR
- 1
描述
## 问题版本
Java-Chassis 2.8.x
## 关键代码
详见:
https://github.com/apache/servicecomb-java-chassis/blob/5f327e6bfc12cf522649c57d156296b0670609c6/edge/edge-core/src/main/java/org/apache/servicecomb/edge/core/EdgeAddHeaderClientFilter.java#L91-L97
`oldRequest.getHeader(key)` 只能取出header的单个值, 如果`key`代表的header有多个值, 则其余header值都不会被透传.
贡献指南
这个仓库没有索引到贡献指南
调研方向
从 edge/edge-core/src/main/java/org/apache/servicecomb/edge/core/EdgeAddHeaderClientFilter.java 的第 91-97 行开始,检查 oldRequest.getHeader(key) 如何处理重复值。复现一个包含多值 header 的请求,并验证完成意味着每个值都会被转发,而不只是其中一个;payload 没有指明任何测试,因此在运行之前先定位相关的 edge-core 覆盖范围。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java
- 领域
- api, backend
- Issue 类型
- 缺陷
- 难度
- 2/5
- 预计耗时
- 1-3 小时
- 活跃度
- 停滞
- 描述清晰度
- 描述清楚
- 新手友好度
- 45/100