From 8d7500610e94da7a045bcd6361757f823ac2e2d5 Mon Sep 17 00:00:00 2001 From: ericprd Date: Thu, 20 Mar 2025 11:52:12 +0800 Subject: [PATCH] fix: get userAgent and IP from custom header --- internal/api/http/logs/create_log_ads.go | 11 ++--------- internal/api/http/news/get_by_slug.go | 11 ++--------- 2 files changed, 4 insertions(+), 18 deletions(-) diff --git a/internal/api/http/logs/create_log_ads.go b/internal/api/http/logs/create_log_ads.go index 8be3191..c9bff8c 100644 --- a/internal/api/http/logs/create_log_ads.go +++ b/internal/api/http/logs/create_log_ads.go @@ -7,7 +7,6 @@ import ( "legalgo-BE-go/internal/utilities/response" "legalgo-BE-go/internal/utilities/utils" "net/http" - "strings" "github.com/go-chi/chi/v5" "github.com/go-playground/validator/v10" @@ -58,17 +57,11 @@ func CreateLogAds( specReq.UserID = &userDetail.ID } - ip := r.RemoteAddr - - if forwarded := r.Header.Get("X-Forwarded-For"); forwarded != "" { - ip = strings.Split(forwarded, ",")[0] - } - - if ip != "" { + if ip := r.Header.Get("X-Ip-Address"); ip != "" { specReq.IP = &ip } - if userAgent := r.UserAgent(); userAgent != "" { + if userAgent := r.Header.Get("X-User-Agent"); userAgent != "" { specReq.UserAgent = &userAgent } diff --git a/internal/api/http/news/get_by_slug.go b/internal/api/http/news/get_by_slug.go index e0dd2bc..7b60f29 100644 --- a/internal/api/http/news/get_by_slug.go +++ b/internal/api/http/news/get_by_slug.go @@ -7,7 +7,6 @@ import ( "legalgo-BE-go/internal/utilities/response" "legalgo-BE-go/internal/utilities/utils" "net/http" - "strings" "github.com/go-chi/chi/v5" ) @@ -45,17 +44,11 @@ func GetBySlug( specReq.UserID = &userDetail.ID } - ip := r.RemoteAddr - - if forwarded := r.Header.Get("X-Forwarded-For"); forwarded != "" { - ip = strings.Split(forwarded, ",")[0] - } - - if ip != "" { + if ip := r.Header.Get("X-Ip-Address"); ip != "" { specReq.IP = &ip } - if userAgent := r.UserAgent(); userAgent != "" { + if userAgent := r.Header.Get("X-User-Agent"); userAgent != "" { specReq.UserAgent = &userAgent }