66| |
77| rpc/http/handler.go |
88| |
9- | LastModified: Mar 6 , 2022 |
9+ | LastModified: Mar 7 , 2022 |
1010| Author: Ma Bingyao <[email protected] > | 1111| |
1212\*________________________________________________________*/
@@ -36,6 +36,7 @@ type Handler struct {
3636 P3P bool
3737 GET bool
3838 CrossDomain bool
39+ DisableHTTPHeader bool
3940 Header http.Header
4041 AccessControlAllowOrigins map [string ]bool
4142 LastModified string
@@ -214,11 +215,13 @@ func (h *Handler) sendHeader(serviceContext *core.ServiceContext, response http.
214215 responseHeader .Set ("Access-Control-Allow-Origin" , "*" )
215216 }
216217 }
217- if h .Header != nil {
218- addHeader (responseHeader , h .Header )
219- }
220- if header , ok := serviceContext .Items ().GetInterface ("httpResponseHeaders" ).(http.Header ); ok {
221- addHeader (responseHeader , header )
218+ if ! h .DisableHTTPHeader {
219+ if h .Header != nil {
220+ addHeader (responseHeader , h .Header )
221+ }
222+ if header , ok := serviceContext .Items ().GetInterface ("httpResponseHeaders" ).(http.Header ); ok {
223+ addHeader (responseHeader , header )
224+ }
222225 }
223226 if code := serviceContext .Items ().GetInt ("httpStatusCode" ); code != 0 {
224227 response .WriteHeader (code )
@@ -229,7 +232,9 @@ func (h *Handler) getServiceContext(response http.ResponseWriter, request *http.
229232 serviceContext := core .NewServiceContext (h .Service )
230233 serviceContext .Items ().Set ("request" , request )
231234 serviceContext .Items ().Set ("response" , response )
232- serviceContext .Items ().Set ("httpRequestHeaders" , request .Header )
235+ if ! h .DisableHTTPHeader {
236+ serviceContext .Items ().Set ("httpRequestHeaders" , request .Header )
237+ }
233238 serviceContext .LocalAddr , _ = net .ResolveTCPAddr ("tcp" , request .Host )
234239 serviceContext .RemoteAddr , _ = net .ResolveTCPAddr ("tcp" , request .RemoteAddr )
235240 serviceContext .Handler = h
@@ -338,11 +343,13 @@ func (h *Handler) sendFastHTTPHeader(serviceContext *core.ServiceContext, ctx *f
338343 ctx .Response .Header .Set ("Access-Control-Allow-Origin" , "*" )
339344 }
340345 }
341- if h .Header != nil {
342- addResponseHeader (& ctx .Response .Header , h .Header )
343- }
344- if header , ok := serviceContext .Items ().GetInterface ("httpResponseHeaders" ).(http.Header ); ok {
345- addResponseHeader (& ctx .Response .Header , header )
346+ if ! h .DisableHTTPHeader {
347+ if h .Header != nil {
348+ addResponseHeader (& ctx .Response .Header , h .Header )
349+ }
350+ if header , ok := serviceContext .Items ().GetInterface ("httpResponseHeaders" ).(http.Header ); ok {
351+ addResponseHeader (& ctx .Response .Header , header )
352+ }
346353 }
347354 if code := serviceContext .Items ().GetInt ("httpStatusCode" ); code != 0 {
348355 ctx .SetStatusCode (code )
@@ -352,7 +359,9 @@ func (h *Handler) sendFastHTTPHeader(serviceContext *core.ServiceContext, ctx *f
352359func (h * Handler ) getFastHTTPServiceContext (ctx * fasthttp.RequestCtx ) * core.ServiceContext {
353360 serviceContext := core .NewServiceContext (h .Service )
354361 serviceContext .Items ().Set ("requestCtx" , ctx )
355- serviceContext .Items ().Set ("httpRequestHeaders" , getRequestHeader (& ctx .Request .Header ))
362+ if ! h .DisableHTTPHeader {
363+ serviceContext .Items ().Set ("httpRequestHeaders" , getRequestHeader (& ctx .Request .Header ))
364+ }
356365 serviceContext .LocalAddr , _ = net .ResolveTCPAddr ("tcp" , convert .ToUnsafeString (ctx .Host ()))
357366 serviceContext .RemoteAddr = ctx .RemoteAddr ()
358367 serviceContext .Handler = h
0 commit comments