diff options
| author | Bobby <[email protected]> | 2026-03-07 17:59:31 +0530 |
|---|---|---|
| committer | Bobby <[email protected]> | 2026-03-07 17:59:31 +0530 |
| commit | a6ec9a807df68978bf3b85314a4c54c60ecc2b7a (patch) | |
| tree | 6201e8d594a3c368cce50ebc402f248814e2025f /utils/meta/request.go | |
| parent | 57df54999e778887e66775481dab46191b46d0b6 (diff) | |
| download | dove-a6ec9a807df68978bf3b85314a4c54c60ecc2b7a.tar.xz dove-a6ec9a807df68978bf3b85314a4c54c60ecc2b7a.zip | |
feat: implement SMTP server with authentication, port validation, and email storage
Diffstat (limited to 'utils/meta/request.go')
| -rw-r--r-- | utils/meta/request.go | 40 |
1 files changed, 30 insertions, 10 deletions
diff --git a/utils/meta/request.go b/utils/meta/request.go index 3098970..34a659a 100644 --- a/utils/meta/request.go +++ b/utils/meta/request.go @@ -8,36 +8,56 @@ import ( "github.com/gofiber/fiber/v2" ) -func Request(context *fiber.Ctx) request { +func Request(context *fiber.Ctx) *request { data, ok := context.Locals(REQUEST_KEY).(types.Request) if !ok { logger.Errorf(LOG_PREFIX, messages.MetaRequestContextMissing) - return request{} + return nil } - return request{ + return &request{ Request: data, context: context, } } -func (self request) Param(key string) value { +func (self *request) Param(key string) *value { + if self == nil { + return nil + } + if self.context != nil { result := self.context.Params(key) if result != "" { - return value{data: result, found: true} + return &value{data: result} } } - return value{} + return nil } -func (self request) Query(key string) value { +func (self *request) Query(key string) *value { + if self == nil { + return nil + } + result, found := findParam(self.Request.Query, key) - return value{data: result, found: found} + if found { + return &value{data: result} + } + + return nil } -func (self request) Header(key string) value { +func (self *request) Header(key string) *value { + if self == nil { + return nil + } + result, found := findParam(self.Request.Headers, key) - return value{data: result, found: found} + if found { + return &value{data: result} + } + + return nil } |
