Skip to content

Commit 6854a24

Browse files
corneliusludmannroboquat
authored andcommitted
[openvsx-proxy] Fix Access-Control-Allow-Origin header for cached values
1 parent a4a1719 commit 6854a24

File tree

3 files changed

+9
-0
lines changed

3 files changed

+9
-0
lines changed

components/openvsx-proxy/pkg/errorhandler.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,9 @@ func (o *OpenVSXProxy) ErrorHandler(rw http.ResponseWriter, r *http.Request, e e
6262
}
6363
}
6464
}
65+
if v := rw.Header().Get("Access-Control-Allow-Origin"); v != "" && v != "*" {
66+
rw.Header().Set("Access-Control-Allow-Origin", r.Header.Get("Origin"))
67+
}
6568
rw.WriteHeader(cached.StatusCode)
6669
rw.Write(cached.Body)
6770
log.WithFields(logFields).Info("used cached response due to a proxy error")

components/openvsx-proxy/pkg/handler.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,9 @@ func (o *OpenVSXProxy) Handler(p *httputil.ReverseProxy) func(http.ResponseWrite
8585
}
8686
}
8787
}
88+
if v := rw.Header().Get("Access-Control-Allow-Origin"); v != "" && v != "*" {
89+
rw.Header().Set("Access-Control-Allow-Origin", r.Header.Get("Origin"))
90+
}
8891
rw.Header().Set("X-Cache", "HIT")
8992
rw.WriteHeader(cached.StatusCode)
9093
rw.Write(cached.Body)

components/openvsx-proxy/pkg/modifyresponse.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,9 @@ func (o *OpenVSXProxy) ModifyResponse(r *http.Response) error {
8181
return nil
8282
}
8383
r.Header = cached.Header
84+
if v := r.Header.Get("Access-Control-Allow-Origin"); v != "" && v != "*" {
85+
r.Header.Set("Access-Control-Allow-Origin", r.Header.Get("Origin"))
86+
}
8487
r.Body = ioutil.NopCloser(bytes.NewBuffer(cached.Body))
8588
r.ContentLength = int64(len(cached.Body))
8689
r.StatusCode = cached.StatusCode

0 commit comments

Comments
 (0)