You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by li...@apache.org on 2020/07/20 06:14:50 UTC

[servicecomb-java-chassis] branch master updated: [SCB-1832] Edge will lose public request headers:old request maybe null

This is an automated email from the ASF dual-hosted git repository.

liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-java-chassis.git


The following commit(s) were added to refs/heads/master by this push:
     new dfe8ef5  [SCB-1832] Edge will lose public request headers:old request maybe null
dfe8ef5 is described below

commit dfe8ef5ea51096aaba66a28fa0c59109a6b784bc
Author: heyile <25...@qq.com>
AuthorDate: Mon Jul 13 10:36:41 2020 +0800

    [SCB-1832] Edge will lose public request headers:old request maybe null
---
 demo/demo-edge/edge-service/src/main/resources/microservice.yaml     | 5 +++++
 .../org/apache/servicecomb/edge/core/EdgeAddHeaderClientFilter.java  | 3 +++
 2 files changed, 8 insertions(+)

diff --git a/demo/demo-edge/edge-service/src/main/resources/microservice.yaml b/demo/demo-edge/edge-service/src/main/resources/microservice.yaml
index e6c6cdf..544cbcf 100644
--- a/demo/demo-edge/edge-service/src/main/resources/microservice.yaml
+++ b/demo/demo-edge/edge-service/src/main/resources/microservice.yaml
@@ -23,6 +23,11 @@ servicecomb:
   service:
     registry:
       address: http://127.0.0.1:30100
+  edge:
+    filter:
+      addHeader:
+        enabled: true
+        allowedHeaders: xxx
   rest:
     address: 0.0.0.0:18080
     server:
diff --git a/edge/edge-core/src/main/java/org/apache/servicecomb/edge/core/EdgeAddHeaderClientFilter.java b/edge/edge-core/src/main/java/org/apache/servicecomb/edge/core/EdgeAddHeaderClientFilter.java
index d461d3c..9a2632f 100644
--- a/edge/edge-core/src/main/java/org/apache/servicecomb/edge/core/EdgeAddHeaderClientFilter.java
+++ b/edge/edge-core/src/main/java/org/apache/servicecomb/edge/core/EdgeAddHeaderClientFilter.java
@@ -75,6 +75,9 @@ public class EdgeAddHeaderClientFilter implements HttpClientFilter {
 
   @Override
   public void beforeSendRequest(Invocation invocation, HttpServletRequestEx requestEx) {
+    if (!invocation.isEdge()) {
+      return;
+    }
     HttpServletRequestEx oldRequest = invocation.getRequestEx();
     publicHeaders.forEach(key -> {
       if (StringUtils.isEmpty(oldRequest.getHeader(key))) {